import_free_function.dot 5.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. strict digraph "tests/contract_testcases/solana/import_free_function.sol" {
  2. foo [label="function foo\ntests/contract_testcases/solana/for_if_no_else.sol:1:1-29\nsignature foo()\nvisibility internal\nmutability nonpayable"]
  3. returns [label="returns\nint256 "]
  4. for [label="for\ntests/contract_testcases/solana/for_if_no_else.sol:2:2-4:13"]
  5. var_decl [label="variable decl int256 i\ntests/contract_testcases/solana/for_if_no_else.sol:2:7-14"]
  6. number_literal [label="int256 literal: 0\ntests/contract_testcases/solana/for_if_no_else.sol:2:13-14"]
  7. less [label="less\ntests/contract_testcases/solana/for_if_no_else.sol:2:16-21"]
  8. variable [label="variable: i\nint256\ntests/contract_testcases/solana/for_if_no_else.sol:2:16-17"]
  9. number_literal_8 [label="int256 literal: 10\ntests/contract_testcases/solana/for_if_no_else.sol:2:19-21"]
  10. expr [label="expression\ntests/contract_testcases/solana/for_if_no_else.sol:2:23-26"]
  11. post_increment [label="post increment\nint256\ntests/contract_testcases/solana/for_if_no_else.sol:2:23-26"]
  12. variable_11 [label="variable: i\nint256\ntests/contract_testcases/solana/for_if_no_else.sol:2:23-24"]
  13. if [label="if\ntests/contract_testcases/solana/for_if_no_else.sol:3:3-4:13"]
  14. more [label="more\ntests/contract_testcases/solana/for_if_no_else.sol:3:7-12"]
  15. variable_14 [label="variable: i\nint256\ntests/contract_testcases/solana/for_if_no_else.sol:3:7-8"]
  16. number_literal_15 [label="int256 literal: 0\ntests/contract_testcases/solana/for_if_no_else.sol:3:11-12"]
  17. return [label="return\ntests/contract_testcases/solana/for_if_no_else.sol:4:4-12"]
  18. number_literal_17 [label="int256 literal: 1\ntests/contract_testcases/solana/for_if_no_else.sol:4:11-12"]
  19. return_18 [label="return\ntests/contract_testcases/solana/for_if_no_else.sol:6:2-10"]
  20. number_literal_19 [label="int256 literal: 2\ntests/contract_testcases/solana/for_if_no_else.sol:6:9-10"]
  21. bar [label="function bar\ntests/contract_testcases/solana/import_free_function.sol:6:1-16\nsignature bar()\nvisibility internal\nmutability nonpayable"]
  22. var_decl_21 [label="variable decl int256 x\ntests/contract_testcases/solana/import_free_function.sol:7:2-15"]
  23. call_internal_function [label="call internal function\ntests/contract_testcases/solana/import_free_function.sol:7:10-15"]
  24. internal_function [label="function() internal returns (int256)\nfree function foo\ntests/contract_testcases/solana/import_free_function.sol:7:10-15"]
  25. expr_24 [label="expression\ntests/contract_testcases/solana/import_free_function.sol:8:2-19"]
  26. assign [label="assign\nint256\ntests/contract_testcases/solana/import_free_function.sol:8:2-19"]
  27. variable_26 [label="variable: x\nint256\ntests/contract_testcases/solana/import_free_function.sol:8:2-3"]
  28. call_internal_function_27 [label="call internal function\ntests/contract_testcases/solana/import_free_function.sol:8:6-19"]
  29. internal_function_28 [label="function() internal returns (int256)\nfree function foo\ntests/contract_testcases/solana/import_free_function.sol:8:6-19"]
  30. expr_29 [label="expression\ntests/contract_testcases/solana/import_free_function.sol:9:2-13"]
  31. assign_30 [label="assign\nint256\ntests/contract_testcases/solana/import_free_function.sol:9:2-13"]
  32. variable_31 [label="variable: x\nint256\ntests/contract_testcases/solana/import_free_function.sol:9:2-3"]
  33. call_internal_function_32 [label="call internal function\ntests/contract_testcases/solana/import_free_function.sol:9:6-13"]
  34. internal_function_33 [label="function() internal returns (int256)\nfree function foo\ntests/contract_testcases/solana/import_free_function.sol:9:6-13"]
  35. expr_34 [label="expression\ntests/contract_testcases/solana/import_free_function.sol:10:2-15"]
  36. assign_35 [label="assign\nint256\ntests/contract_testcases/solana/import_free_function.sol:10:2-15"]
  37. variable_36 [label="variable: x\nint256\ntests/contract_testcases/solana/import_free_function.sol:10:2-3"]
  38. call_internal_function_37 [label="call internal function\ntests/contract_testcases/solana/import_free_function.sol:10:6-15"]
  39. internal_function_38 [label="function() internal returns (int256)\nfree function foo\ntests/contract_testcases/solana/import_free_function.sol:10:6-15"]
  40. diagnostic [label="function can be declared 'pure'\nlevel Warning\ntests/contract_testcases/solana/for_if_no_else.sol:1:1-29"]
  41. free_functions -> foo [label="function"]
  42. foo -> returns [label="returns"]
  43. foo -> for [label="body"]
  44. for -> var_decl [label="init"]
  45. var_decl -> number_literal [label="init"]
  46. for -> less [label="cond"]
  47. less -> variable [label="left"]
  48. less -> number_literal_8 [label="right"]
  49. for -> expr [label="next"]
  50. expr -> post_increment [label="expr"]
  51. post_increment -> variable_11 [label="expr"]
  52. for -> if [label="body"]
  53. if -> more [label="cond"]
  54. more -> variable_14 [label="left"]
  55. more -> number_literal_15 [label="right"]
  56. if -> return [label="then"]
  57. return -> number_literal_17 [label="expr"]
  58. for -> return_18 [label="next"]
  59. return_18 -> number_literal_19 [label="expr"]
  60. free_functions -> bar [label="function"]
  61. bar -> var_decl_21 [label="body"]
  62. var_decl_21 -> call_internal_function [label="init"]
  63. call_internal_function -> internal_function [label="function"]
  64. var_decl_21 -> expr_24 [label="next"]
  65. expr_24 -> assign [label="expr"]
  66. assign -> variable_26 [label="left"]
  67. assign -> call_internal_function_27 [label="right"]
  68. call_internal_function_27 -> internal_function_28 [label="function"]
  69. expr_24 -> expr_29 [label="next"]
  70. expr_29 -> assign_30 [label="expr"]
  71. assign_30 -> variable_31 [label="left"]
  72. assign_30 -> call_internal_function_32 [label="right"]
  73. call_internal_function_32 -> internal_function_33 [label="function"]
  74. expr_29 -> expr_34 [label="next"]
  75. expr_34 -> assign_35 [label="expr"]
  76. assign_35 -> variable_36 [label="left"]
  77. assign_35 -> call_internal_function_37 [label="right"]
  78. call_internal_function_37 -> internal_function_38 [label="function"]
  79. diagnostics -> diagnostic [label="Warning"]
  80. }