| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- strict digraph "tests/contract_testcases/solana/account_meta.sol" {
- contract [label="contract spl\ntests/contract_testcases/solana/account_meta.sol:3:1-18:2"]
- foo [label="function foo\ncontract: spl\ntests/contract_testcases/solana/account_meta.sol:4:2-47\nsignature foo()\nvisibility public\nmutability nonpayable"]
- returns [label="returns\nbool \naddress "]
- var_decl [label="variable decl struct AccountMeta meta\ntests/contract_testcases/solana/account_meta.sol:5:3-69"]
- struct_literal [label="struct literal: struct AccountMeta\ntests/contract_testcases/solana/account_meta.sol:5:26-69"]
- getref [label="getref address\ntests/contract_testcases/solana/account_meta.sol:5:26-69"]
- cast [label="cast address\ntests/contract_testcases/solana/account_meta.sol:5:42-55"]
- builtins [label="builtin GetAddress\ntests/contract_testcases/solana/account_meta.sol:5:50-54"]
- bool_literal [label="bool literal: true\ntests/contract_testcases/solana/account_meta.sol:5:57-61"]
- bool_literal_10 [label="bool literal: false\ntests/contract_testcases/solana/account_meta.sol:5:63-68"]
- return [label="return\ntests/contract_testcases/solana/account_meta.sol:6:3-41"]
- list [label="list\ntests/contract_testcases/solana/account_meta.sol:6:3-41"]
- load [label="load bool\ntests/contract_testcases/solana/account_meta.sol:6:3-41"]
- structmember [label="struct member #1 bool\ntests/contract_testcases/solana/account_meta.sol:6:16-27"]
- variable [label="variable: meta\nstruct AccountMeta\ntests/contract_testcases/solana/account_meta.sol:6:11-15"]
- load_16 [label="load address\ntests/contract_testcases/solana/account_meta.sol:6:3-41"]
- load_17 [label="load address\ntests/contract_testcases/solana/account_meta.sol:6:3-41"]
- structmember_18 [label="struct member #0 address\ntests/contract_testcases/solana/account_meta.sol:6:34-40"]
- variable_19 [label="variable: meta\nstruct AccountMeta\ntests/contract_testcases/solana/account_meta.sol:6:29-33"]
- bar [label="function bar\ncontract: spl\ntests/contract_testcases/solana/account_meta.sol:9:2-56\nsignature bar(bytes32)\nvisibility public\nmutability nonpayable"]
- parameters [label="parameters\naddress x"]
- returns_22 [label="returns\nbool \naddress "]
- var_decl_23 [label="variable decl struct AccountMeta[2] meta\ntests/contract_testcases/solana/account_meta.sol:10:3-13:4"]
- array_literal [label="array literal: struct AccountMeta[2]\ntests/contract_testcases/solana/account_meta.sol:10:29-13:4"]
- struct_literal_25 [label="struct literal: struct AccountMeta\ntests/contract_testcases/solana/account_meta.sol:11:4-34"]
- getref_26 [label="getref address\ntests/contract_testcases/solana/account_meta.sol:11:4-34"]
- variable_27 [label="variable: x\naddress\ntests/contract_testcases/solana/account_meta.sol:11:20-21"]
- bool_literal_28 [label="bool literal: true\ntests/contract_testcases/solana/account_meta.sol:11:23-27"]
- bool_literal_29 [label="bool literal: true\ntests/contract_testcases/solana/account_meta.sol:11:29-33"]
- struct_literal_30 [label="struct literal: struct AccountMeta\ntests/contract_testcases/solana/account_meta.sol:12:4-70"]
- getref_31 [label="getref address\ntests/contract_testcases/solana/account_meta.sol:12:4-70"]
- variable_32 [label="variable: x\naddress\ntests/contract_testcases/solana/account_meta.sol:12:29-30"]
- bool_literal_33 [label="bool literal: false\ntests/contract_testcases/solana/account_meta.sol:12:45-50"]
- bool_literal_34 [label="bool literal: false\ntests/contract_testcases/solana/account_meta.sol:12:63-68"]
- return_35 [label="return\ntests/contract_testcases/solana/account_meta.sol:15:3-47"]
- list_36 [label="list\ntests/contract_testcases/solana/account_meta.sol:15:3-47"]
- load_37 [label="load bool\ntests/contract_testcases/solana/account_meta.sol:15:3-47"]
- structmember_38 [label="struct member #1 bool\ntests/contract_testcases/solana/account_meta.sol:15:19-30"]
- subscript [label="subscript struct AccountMeta[2]\ntests/contract_testcases/solana/account_meta.sol:15:11-18"]
- variable_40 [label="variable: meta\nstruct AccountMeta[2]\ntests/contract_testcases/solana/account_meta.sol:15:11-15"]
- number_literal [label="uint32 literal: 1\ntests/contract_testcases/solana/account_meta.sol:15:16-17"]
- load_42 [label="load address\ntests/contract_testcases/solana/account_meta.sol:15:3-47"]
- load_43 [label="load address\ntests/contract_testcases/solana/account_meta.sol:15:3-47"]
- structmember_44 [label="struct member #0 address\ntests/contract_testcases/solana/account_meta.sol:15:40-46"]
- subscript_45 [label="subscript struct AccountMeta[2]\ntests/contract_testcases/solana/account_meta.sol:15:32-39"]
- variable_46 [label="variable: meta\nstruct AccountMeta[2]\ntests/contract_testcases/solana/account_meta.sol:15:32-36"]
- number_literal_47 [label="uint32 literal: 0\ntests/contract_testcases/solana/account_meta.sol:15:37-38"]
- diagnostic [label="found contract 'spl'\nlevel Debug\ntests/contract_testcases/solana/account_meta.sol:3:1-18:2"]
- diagnostic_50 [label="function can be declared 'pure'\nlevel Warning\ntests/contract_testcases/solana/account_meta.sol:4:2-47"]
- diagnostic_51 [label="function can be declared 'pure'\nlevel Warning\ntests/contract_testcases/solana/account_meta.sol:9:2-56"]
- contracts -> contract
- contract -> foo [label="function"]
- foo -> returns [label="returns"]
- foo -> var_decl [label="body"]
- var_decl -> struct_literal [label="init"]
- struct_literal -> getref [label="arg #0"]
- getref -> cast [label="expr"]
- cast -> builtins [label="expr"]
- struct_literal -> bool_literal [label="arg #1"]
- struct_literal -> bool_literal_10 [label="arg #2"]
- var_decl -> return [label="next"]
- return -> list [label="expr"]
- list -> load [label="entry #0"]
- load -> structmember [label="expr"]
- structmember -> variable [label="var"]
- list -> load_16 [label="entry #1"]
- load_16 -> load_17 [label="expr"]
- load_17 -> structmember_18 [label="expr"]
- structmember_18 -> variable_19 [label="var"]
- contract -> bar [label="function"]
- bar -> parameters [label="parameters"]
- bar -> returns_22 [label="returns"]
- bar -> var_decl_23 [label="body"]
- var_decl_23 -> array_literal [label="init"]
- array_literal -> struct_literal_25 [label="arg #0"]
- struct_literal_25 -> getref_26 [label="arg #0"]
- getref_26 -> variable_27 [label="expr"]
- struct_literal_25 -> bool_literal_28 [label="arg #1"]
- struct_literal_25 -> bool_literal_29 [label="arg #2"]
- array_literal -> struct_literal_30 [label="arg #1"]
- struct_literal_30 -> getref_31 [label="arg #0"]
- getref_31 -> variable_32 [label="expr"]
- struct_literal_30 -> bool_literal_33 [label="arg #1"]
- struct_literal_30 -> bool_literal_34 [label="arg #2"]
- var_decl_23 -> return_35 [label="next"]
- return_35 -> list_36 [label="expr"]
- list_36 -> load_37 [label="entry #0"]
- load_37 -> structmember_38 [label="expr"]
- structmember_38 -> subscript [label="var"]
- subscript -> variable_40 [label="array"]
- subscript -> number_literal [label="index"]
- list_36 -> load_42 [label="entry #1"]
- load_42 -> load_43 [label="expr"]
- load_43 -> structmember_44 [label="expr"]
- structmember_44 -> subscript_45 [label="var"]
- subscript_45 -> variable_46 [label="array"]
- subscript_45 -> number_literal_47 [label="index"]
- diagnostics -> diagnostic [label="Debug"]
- diagnostics -> diagnostic_50 [label="Warning"]
- diagnostics -> diagnostic_51 [label="Warning"]
- }
|