immutable_01.dot 1.6 KB

123456789101112131415161718192021222324
  1. strict digraph "tests/contract_testcases/substrate/variables/immutable_01.sol" {
  2. contract [label="contract x\ntests/contract_testcases/substrate/variables/immutable_01.sol:1:1-7:10"]
  3. var [label="variable y\nvisibility public\nimmutable\nint256\ntests/contract_testcases/substrate/variables/immutable_01.sol:2:13-39"]
  4. number_literal [label="int256 literal: 1\ntests/contract_testcases/substrate/variables/immutable_01.sol:2:38-39"]
  5. y [label="function y\ncontract: x\ntests/contract_testcases/substrate/variables/immutable_01.sol:2:34-35\nsignature y()\nvisibility public\nmutability view"]
  6. returns [label="returns\nint256 y"]
  7. return [label="return\nimplicit"]
  8. storage_load [label="storage load int256\nimplicit"]
  9. storage_var [label="storage variable\nx.y\nint256 storage\nimplicit"]
  10. foo [label="function foo\ncontract: x\ntests/contract_testcases/substrate/variables/immutable_01.sol:4:13-34\nsignature foo()\nvisibility public\nmutability nonpayable"]
  11. diagnostic [label="found contract 'x'\nlevel Debug\ntests/contract_testcases/substrate/variables/immutable_01.sol:1:1-7:10"]
  12. diagnostic_12 [label="cannot assign to immutable outside of constructor\nlevel Error\ntests/contract_testcases/substrate/variables/immutable_01.sol:5:17-23"]
  13. contracts -> contract
  14. contract -> var [label="variable"]
  15. var -> number_literal [label="initializer"]
  16. contract -> y [label="function"]
  17. y -> returns [label="returns"]
  18. y -> return [label="body"]
  19. return -> storage_load [label="expr"]
  20. storage_load -> storage_var [label="expr"]
  21. contract -> foo [label="function"]
  22. diagnostics -> diagnostic [label="Debug"]
  23. diagnostics -> diagnostic_12 [label="Error"]
  24. }