const node = {} node['ast'] = { "legacyAST":{ "children":[{ "attributes":{ "fullyImplemented":true,"isLibrary":false,"linearizedBaseContracts":[5640396],"name":"test" },"children":[{ "attributes":{ "name":"x","type":"int256" },"children":[{ "attributes":{ "name":"int" },"id":5657860,"name":"ElementaryTypeName","src":"21:3:11" }],"id":5658100,"name":"VariableDeclaration","src":"21:5:11" },{ "attributes":{ "name":"y","type":"int256" },"children":[{ "attributes":{ "name":"int" },"id":5658180,"name":"ElementaryTypeName","src":"38:3:11" }],"id":5658268,"name":"VariableDeclaration","src":"38:5:11" },{ "attributes":{ "constant":false,"name":"set","public":true },"children":[{ "children":[{ "attributes":{ "name":"_x","type":"int256" },"children":[{ "attributes":{ "name":"int" },"id":5658404,"name":"ElementaryTypeName","src":"68:3:11" }],"id":5658492,"name":"VariableDeclaration","src":"68:6:11" }],"id":5658572,"name":"ParameterList","src":"67:8:11" },{ "children":[{ "attributes":{ "name":"_r","type":"int256" },"children":[{ "attributes":{ "name":"int" },"id":5658628,"name":"ElementaryTypeName","src":"85:3:11" }],"id":5658716,"name":"VariableDeclaration","src":"85:6:11" }],"id":5658796,"name":"ParameterList","src":"84:8:11" },{ "children":[{ "children":[{ "attributes":{ "operator":"=","type":"int256" },"children":[{ "attributes":{ "type":"int256","value":"x" },"id":5658900,"name":"Identifier","src":"108:1:11" },{ "attributes":{ "type":"int256","value":"_x" },"id":5658980,"name":"Identifier","src":"112:2:11" }],"id":5657492,"name":"Assignment","src":"108:6:11" }],"id":5659028,"name":"ExpressionStatement","src":"108:6:11" },{ "children":[{ "attributes":{ "operator":"=","type":"int256" },"children":[{ "attributes":{ "type":"int256","value":"y" },"id":5659116,"name":"Identifier","src":"125:1:11" },{ "attributes":{ "string":null,"type":"int_const 10","value":"10" },"id":5659196,"name":"Literal","src":"129:2:11" }],"id":5659252,"name":"Assignment","src":"125:6:11" }],"id":5659316,"name":"ExpressionStatement","src":"125:6:11" },{ "children":[{ "attributes":{ "operator":"=","type":"int256" },"children":[{ "attributes":{ "type":"int256","value":"_r" },"id":5659428,"name":"Identifier","src":"141:2:11" },{ "attributes":{ "type":"int256","value":"x" },"id":5639308,"name":"Identifier","src":"146:1:11" }],"id":5639356,"name":"Assignment","src":"141:6:11" }],"id":5639420,"name":"ExpressionStatement","src":"141:6:11" }],"id":5639516,"name":"Block","src":"97:57:11" }],"id":5639612,"name":"FunctionDefinition","src":"55:99:11" },{ "attributes":{ "constant":false,"name":"get","public":true },"children":[{ "children":[],"id":5639764,"name":"ParameterList","src":"179:2:11" },{ "children":[{ "attributes":{ "name":"x","type":"uint256" },"children":[{ "attributes":{ "name":"uint" },"id":5639820,"name":"ElementaryTypeName","src":"191:4:11" }],"id":5639908,"name":"VariableDeclaration","src":"191:6:11" },{ "attributes":{ "name":"y","type":"uint256" },"children":[{ "attributes":{ "name":"uint" },"id":5639988,"name":"ElementaryTypeName","src":"199:4:11" }],"id":5640076,"name":"VariableDeclaration","src":"199:6:11" }],"id":5640156,"name":"ParameterList","src":"190:16:11" },{ "children":[],"id":5640212,"name":"Block","src":"212:17:11" }],"id":5640276,"name":"FunctionDefinition","src":"167:62:11" }],"id":5640396,"name":"ContractDefinition","src":"0:231:11" }],"name":"SourceUnit" } } node['ast'].ast = { absolutePath: 'sample.sol', exportedSymbols: { test: [33]}, id: 34, nodeType: 'SourceUnit', nodes: [{ abstract: false, baseContracts: [], contractDependencies: [], contractKind: 'contract', documentation: null, fullyImplemented: true, id: 33, linearizedBaseContracts: [33], name: 'test', nodeType: 'ContractDefinition', nodes: [{ constant: false, id: 2, name: 'x', nodeType: 'VariableDeclaration', overrides: null, scope: 33, src: '20:5:0', stateVariable: true, storageLocation: 'default', typeDescriptions: { typeIdentifier: 't_int256', typeString: 'int256' }, typeName: { id: 1, name: 'int', nodeType: 'ElementaryTypeName', src: '20:3:0', typeDescriptions: [Object] }, value: null, visibility: 'internal' }, { constant: false, id: 4, name: 'y', nodeType: 'VariableDeclaration', overrides: null, scope: 33, src: '31:5:0', stateVariable: true, storageLocation: 'default', typeDescriptions: { typeIdentifier: 't_int256', typeString: 'int256' }, typeName: { id: 3, name: 'int', nodeType: 'ElementaryTypeName', src: '31:3:0', typeDescriptions: [Object]}, value: null, visibility: 'internal' }, { body: { id: 23, nodeType: 'Block', src: '96:55:0', statements: [{ expression: { argumentTypes: null, id: 13, isConstant: false, isLValue: false, isPure: false, lValueRequested: false, leftHandSide: { argumentTypes: null, id: 11, name: 'x', nodeType: 'Identifier', overloadedDeclarations: [], referencedDeclaration: 2, src: '106:1:0', typeDescriptions: { typeIdentifier: 't_int256', typeString: 'int256' } }, nodeType: 'Assignment', operator: '=', rightHandSide: { argumentTypes: null, id: 12, name: '_x', nodeType: 'Identifier', overloadedDeclarations: [], referencedDeclaration: 6, src: '110:2:0', typeDescriptions: { typeIdentifier: 't_int256', typeString: 'int256' } }, src: '106:6:0', typeDescriptions: { typeIdentifier: 't_int256', typeString: 'int256' } }, id: 14, nodeType: 'ExpressionStatement', src: '106:6:0' }, { expression: { argumentTypes: null, id: 17, isConstant: false, isLValue: false, isPure: false, lValueRequested: false, leftHandSide: [Object], nodeType: 'Assignment', operator: '=', rightHandSide: [Object], src: '122:6:0', typeDescriptions: [Object]}, id: 18, nodeType: 'ExpressionStatement', src: '122:6:0' }, { expression: { argumentTypes: null, id: 21, isConstant: false, isLValue: false, isPure: false, lValueRequested: false, leftHandSide: [Object], nodeType: 'Assignment', operator: '=', rightHandSide: [Object], src: '138:6:0', typeDescriptions: [Object]}, id: 22, nodeType: 'ExpressionStatement', src: '138:6:0' }] }, documentation: null, functionSelector: 'e5c19b2d', id: 24, implemented: true, kind: 'function', modifiers: [], name: 'set', nodeType: 'FunctionDefinition', overrides: null, parameters: { id: 7, nodeType: 'ParameterList', parameters: [Array], src: '59:8:0' }, returnParameters: { id: 10, nodeType: 'ParameterList', parameters: [Array], src: '83:8:0' }, scope: 33, src: '47:104:0', stateMutability: 'nonpayable', virtual: false, visibility: 'public' }, { body: { id: 31, nodeType: 'Block', src: '214:17:0', statements: []}, documentation: null, functionSelector: '6d4ce63c', id: 32, implemented: true, kind: 'function', modifiers: [], name: 'get', nodeType: 'FunctionDefinition', overrides: null, parameters: { id: 25, nodeType: 'ParameterList', parameters: [], src: '175:2:0' }, returnParameters: { id: 30, nodeType: 'ParameterList', parameters: [Array], src: '193:16:0' }, scope: 33, src: '163:68:0', stateMutability: 'nonpayable', virtual: false, visibility: 'public' }], scope: 34, src: '0:233:0' }], src: '0:233:0' } node['source'] = `contract test { int x; int y; function set(int _x) returns (int _r) { x = _x; y = 10; _r = x; } function get() returns (uint x, uint y) { } }` module.exports = node