diff --git a/API/README.md b/API/README.md deleted file mode 100644 index 0537cdec..00000000 --- a/API/README.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -description: Basic concepts of using API module ---- - -# 📌 Main concepts - -The part of a glider code that will query information from DB is contained in the API module, as well as other high-level graph functions can be found there. - -The query chain is constructed in DSL format - -```python -instructions = ( - Functions() - .with_one_property([MethodProp.EXTERNAL, MethodProp.PUBLIC]) - .without_properties([MethodProp.HAS_MODIFIERS, MethodProp.IS_CONSTRUCTOR]) - .instructions() - .with_called_function_name("selfdestruct") - .exec() -) -``` - -As you can see here, the chain consists of different types of filterings, such as with\_one\_property, without\_properties, etc. - -The way to think of this filter chain is that every filter narrows down the set of results before entering the next filter chain. In other words, the filters can also be thought of as a chain joined with a logical AND operator. - -## Changing entities - -As can be seen from the code above, the chain can also change the entity it is filtering on. - -Here, the part `.instructions()` will "level down" to the instructions of the functions that have been filtered previously in the chain, and the user can continue filtering on the new type of entity. - -Likewise, a "level-up" can also be made, for example, starting filtering with instructions and then changing the query entity to functions. - -## Performance note - -One should consider performance issues coming from changing entities multiple times during a chain of queries. - -In such situations, it is much more effective to break it into multiple query chains and then combine the results. - -## Pagination of results - -The last part of the query always ends with .exec() call, which can also be used to paginate the results in case the returned set is big. - -The function can be called with parameters: - -`exec(limit)` - -`exec(offset,limit)` diff --git a/API/SUMMARY.md b/API/SUMMARY.md deleted file mode 100644 index 227eb340..00000000 --- a/API/SUMMARY.md +++ /dev/null @@ -1,339 +0,0 @@ -# Table of contents - -* [📌 Main concepts](README.md) -* [Argument](argument/README.md) - * [Argument.backward\_instructions()](argument/argument.backward\_instructions.md) - * [Argument.data](argument/argument.data.md) - * [Argument.df\_reaches\_from\_functions\_arguments()](argument/argument.df\_reaches\_from\_functions\_arguments.md) - * [Argument.df\_reaching\_functions\_arguments()](argument/argument.df\_reaching\_functions\_arguments.md) - * [Argument.forward\_instructions()](argument/argument.forward\_instructions.md) - * [Argument.get\_parent()](argument/argument.get\_parent.md) - * [Argument.index](argument/argument.index.md) - * [Argument.memory\_type](argument/argument.memory\_type.md) - * [Argument.name](argument/argument.name.md) - * [Argument.procedure\_graph\_node](argument/argument.procedure\_graph\_node.md) - * [Argument.source\_code()](argument/argument.source\_code.md) - * [Argument.type](argument/argument.type.md) -* [Arguments](arguments/README.md) - * [Arguments.list()](arguments/arguments.list.md) - * [Arguments.with\_memory\_type()](arguments/arguments.with\_memory\_type.md) - * [Arguments.with\_type()](arguments/arguments.with\_type.md) - * [Arguments.with\_type\_convertible()](arguments/arguments.with\_type\_convertible.md) -* [Convertor](convertor/README.md) - * [Convertor.add()](convertor/convertor.add.md) - * [Convertor.can\_convert()](convertor/convertor.can\_convert.md) - * [Convertor.set\_conversions()](convertor/convertor.set\_conversions.md) -* [CallGraph](callgraph/README.md) - * [CallGraph.name\_prefix()](callgraph/callgraph.name\_prefix.md) - * [CallGraph.name\_suffix()](callgraph/callgraph.name\_suffix.md) - * [CallGraph.nodes()](callgraph/callgraph.nodes.md) - * [CallGraph.with\_name()](callgraph/callgraph.with\_name.md) - * [CallGraph.with\_name\_not()](callgraph/callgraph.with\_name\_not.md) -* [CallNode](callnode/README.md) - * [CallNode.callee\_functions()](callnode/callnode.callee\_functions.md) - * [CallNode.callees()](callnode/callnode.callees.md) - * [CallNode.caller\_functions()](callnode/callnode.caller\_functions.md) - * [CallNode.callers()](callnode/callnode.callers.md) - * [CallNode.function()](callnode/callnode.function.md) - * [CallNode.function\_name()](callnode/callnode.function\_name.md) -* [Condition](condition/README.md) - * [Condition.is\_eq()](condition/condition.is\_eq.md) - * [Condition.is\_geq()](condition/condition.is\_geq.md) - * [Condition.is\_gr()](condition/condition.is\_gr.md) - * [Condition.is\_le()](condition/condition.is\_le.md) - * [Condition.is\_leq()](condition/condition.is\_leq.md) -* [Contract](contract/README.md) - * [Contract.address()](contract/contract.address.md) - * [Contract.base\_contracts()](contract/contract.base\_contracts.md) - * [Contract.call\_graph()](contract/contract.call\_graph.md) - * [Contract.chain\_id()](contract/contract.chain\_id.md) - * [Contract.constructor()](contract/contract.constructor.md) - * [Contract.derived\_contracts()](contract/contract.derived\_contracts.md) - * [Contract.dump\_into\_json()](contract/contract.dump\_into\_json.md) - * [Contract.enums()](contract/contract.enums.md) - * [Contract.errors()](contract/contract.errors.md) - * [Contract.events()](contract/contract.events.md) - * [Contract.functions()](contract/contract.functions.md) - * [Contract.get\_contracts\_from\_same\_src\_file()](contract/contract.get\_contracts\_from\_same\_src\_file.md) - * [Contract.id\_key()](contract/contract.id\_key.md) - * [Contract.is\_lib()](contract/contract.is\_lib.md) - * [Contract.is\_main()](contract/contract.is\_main.md) - * [Contract.modifiers()](contract/contract.modifiers.md) - * [Contract.name](contract/contract.name.md) - * [Contract.parent\_contracts()](contract/contract.parent\_contracts.md) - * [Contract.pragmas()](contract/contract.pragmas.md) - * [Contract.source\_code()](contract/contract.source\_code.md) - * [Contract.structs()](contract/contract.structs.md) - * [Contract.variables()](contract/contract.variables.md) -* [Contracts](contracts/README.md) - * [Contracts.contracts](contracts/contracts.contracts.md) - * [Contracts.exec()](contracts/contracts.exec.md) - * [Contracts.functions()](contracts/contracts.functions.md) - * [Contracts.interfaces()](contracts/contracts.interfaces.md) - * [Contracts.mains()](contracts/contracts.mains.md) - * [Contracts.name\_prefix()](contracts/contracts.name\_prefix.md) - * [Contracts.name\_regex()](contracts/contracts.name\_regex.md) - * [Contracts.name\_suffix()](contracts/contracts.name\_suffix.md) - * [Contracts.with\_compiler\_range()](contracts/contracts.with\_compiler\_range.md) - * [Contracts.with\_compiler\_range\_not()](contracts/contracts.with\_compiler\_range\_not.md) - * [Contracts.with\_error\_name()](contracts/contracts.with\_error\_name.md) - * [Contracts.with\_error\_prefix()](contracts/contracts.with\_error\_prefix.md) - * [Contracts.with\_error\_regex()](contracts/contracts.with\_error\_regex.md) - * [Contracts.with\_error\_signature()](contracts/contracts.with\_error\_signature.md) - * [Contracts.with\_error\_suffix()](contracts/contracts.with\_error\_suffix.md) - * [Contracts.with\_event\_name()](contracts/contracts.with\_event\_name.md) - * [Contracts.with\_event\_prefix()](contracts/contracts.with\_event\_prefix.md) - * [Contracts.with\_event\_regex()](contracts/contracts.with\_event\_regex.md) - * [Contracts.with\_event\_signature()](contracts/contracts.with\_event\_signature.md) - * [Contracts.with\_event\_suffix()](contracts/contracts.with\_event\_suffix.md) - * [Contracts.with\_function\_name()](contracts/contracts.with\_function\_name.md) - * [Contracts.with\_function\_name\_not()](contracts/contracts.with\_function\_name\_not.md) - * [Contracts.with\_ids()](contracts/contracts.with\_ids.md) - * [Contracts.with\_info()](contracts/contracts.with\_info.md) - * [Contracts.with\_name()](contracts/contracts.with\_name.md) - * [Contracts.with\_name\_not()](contracts/contracts.with\_name\_not.md) - * [Contracts.with\_struct\_field\_name()](contracts/contracts.with\_struct\_field\_name.md) - * [Contracts.with\_struct\_field\_type()](contracts/contracts.with\_struct\_field\_type.md) - * [Contracts.with\_struct\_fields\_count()](contracts/contracts.with\_struct\_fields\_count.md) - * [Contracts.with\_struct\_name()](contracts/contracts.with\_struct\_name.md) -* [Event](event/README.md) - * [Event.arg\_list()](event/event.arg\_list.md) - * [Event.dump\_into\_json()](event/event.dump\_into\_json.md) - * [Event.name](event/event.name.md) - * [Event.signature](event/event.signature.md) -* [Callable](callable/README.md) - * [Callable.arguments()](callable/callable.arguments.md) - * [Callable.asm\_instructions()](callable/callable.asm\_instructions.md) - * [Callable.break\_instructions()](callable/callable.break\_instructions.md) - * [Callable.get\_all\_called()](callable/callable.get\_all\_called.md) - * [Callable.callee\_values()](callable/callable.callee\_values.md) - * [Callable.calls\_instructions()](callable/callable.calls\_instructions.md) - * [Callable.catch\_instructions()](callable/callable.catch\_instructions.md) - * [Callable.continue\_instructions()](callable/callable.continue\_instructions.md) - * [Callable.db\_id](callable/callable.db\_id.md) - * [Callable.dump\_into\_json()](callable/callable.dump\_into\_json.md) - * [Callable.end\_assembly\_instructions()](callable/callable.end\_assembly\_instructions.md) - * [Callable.end\_if\_instructions()](callable/callable.end\_if\_instructions.md) - * [Callable.end\_loop\_instructions()](callable/callable.end\_loop\_instructions.md) - * [Callable.entry\_point\_instructions()](callable/callable.entry\_point\_instructions.md) - * [Callable.expression\_instructions()](callable/callable.expression\_instructions.md) - * [Callable.get\_contract()](callable/callable.get\_contract.md) - * [Callable.get\_pg()](callable/callable.get\_pg.md) - * [Callable.hashed\_signature()](callable/callable.hashed\_signature.md) - * [Callable.if\_instructions()](callable/callable.if\_instructions.md) - * [Callable.if\_loop\_instructions()](callable/callable.if\_loop\_instructions.md) - * [Callable.instruction\_with\_id()](callable/callable.instruction\_with\_id.md) - * [Callable.instructions()](callable/callable.instructions.md) - * [Callable.name()](callable/callable.name.md) - * [Callable.signature()](callable/callable.signature.md) - * [Callable.source\_code()](callable/callable.source\_code.md) - * [Callable.source\_line()](callable/callable.source\_line.md) - * [Callable.start\_loop\_instructions()](callable/callable.start\_loop\_instructions.md) - * [Callable.throw\_instructions()](callable/callable.throw\_instructions.md) - * [Callable.try\_instructions()](callable/callable.try\_instructions.md) -* [Callables](callables/README.md) - * [Callables.contracts()](callables/callables.contracts.md) - * [Callables.instructions()](callables/callables.instructions.md) - * [Callables.name\_prefix()](callables/callables.name\_prefix.md) - * [Callables.name\_prefixes()](callables/callables.name\_prefixes.md) - * [Callables.name\_regex()](callables/callables.name\_regex.md) - * [Callables.name\_regexes()](callables/callables.name\_regexes.md) - * [Callables.name\_suffix()](callables/callables.name\_suffix.md) - * [Callables.name\_suffixes()](callables/callables.name\_suffixes.md) - * [Callables.with\_arg\_count()](callables/callables.with\_arg\_count.md) - * [Callables.with\_arg\_memory\_type()](callables/callables.with\_arg\_memory\_type.md) - * [Callables.with\_arg\_name()](callables/callables.with\_arg\_name.md) - * [Callables.with\_arg\_type()](callables/callables.with\_arg\_type.md) - * [Callables.with\_arg\_types()](callables/callables.with\_arg\_types.md) - * [Callables.with\_hashed\_signature()](callables/callables.with\_hashed\_signature.md) - * [Callables.with\_name()](callables/callables.with\_name.md) - * [Callables.with\_name\_not()](callables/callables.with\_name\_not.md) - * [Callables.with\_names()](callables/callables.with\_names.md) - * [Callables.with\_names\_not()](callables/callables.with\_names\_not.md) - * [Callables.with\_signature()](callables/callables.with\_signature.md) - * [Callables.with\_signatures()](callables/callables.with\_signatures.md) -* [Function](function/README.md) - * [Function.Properties](function/function.properties.md) - * [Function.get\_callee\_functions()](function/function.get\_callee\_functions.md) - * [Function.has\_modifiers()](function/function.has\_modifiers.md) - * [Function.is\_constructor()](function/function.is\_constructor.md) - * [Function.is\_external()](function/function.is\_external.md) - * [Function.is\_global()](function/function.is\_global.md) - * [Function.is\_internal()](function/function.is\_internal.md) - * [Function.is\_payable()](function/function.is\_payable.md) - * [Function.is\_private()](function/function.is\_private.md) - * [Function.is\_public()](function/function.is\_public.md) - * [Function.is\_pure()](function/function.is\_pure.md) - * [Function.is\_view()](function/function.is\_view.md) - * [Function.modifiers()](function/function.modifiers.md) - * [Function.other\_entry\_point\_instructions()](function/function.other\_entry\_point\_instructions.md) - * [Function.properties()](function/function.properties-1.md) - * [Function.return\_instructions()](function/function.return\_instructions.md) - * [Function.return\_tuple()](function/function.return\_tuple.md) -* [Functions](functions/README.md) - * [Functions.constructors()](functions/functions.constructors.md) - * [Functions.exec()](functions/functions.exec.md) - * [Functions.list()](functions/functions.list.md) - * [Functions.with\_all\_properties()](functions/functions.with\_all\_properties.md) - * [Functions.with\_declarer\_contract\_name()](functions/functions.with\_declarer\_contract\_name.md) - * [Functions.with\_modifier\_name()](functions/functions.with\_modifier\_name.md) - * [Functions.with\_modifier\_name\_not()](functions/functions.with\_modifier\_name\_not.md) - * [Functions.with\_modifier\_name\_regex()](functions/functions.with\_modifier\_name\_regex.md) - * [Functions.with\_modifier\_signature()](functions/functions.with\_modifier\_signature.md) - * [Functions.with\_modifiers\_name()](functions/functions.with\_modifiers\_name.md) - * [Functions.with\_modifiers\_name\_not()](functions/functions.with\_modifiers\_name\_not.md) - * [Functions.with\_modifiers\_name\_regex()](functions/functions.with\_modifiers\_name\_regex.md) - * [Functions.with\_one\_property()](functions/functions.with\_one\_property.md) - * [Functions.without\_properties()](functions/functions.without\_properties.md) -* [MethodProp](methodprop/README.md) - * [MethodProp.EXTERNAL](methodprop/methodprop.external.md) - * [MethodProp.HAS\_ARGS](methodprop/methodprop.has\_args.md) - * [MethodProp.HAS\_CALLEES](methodprop/methodprop.has\_callees.md) - * [MethodProp.HAS\_ERRORS](methodprop/methodprop.has\_errors.md) - * [MethodProp.HAS\_MODIFIERS](methodprop/methodprop.has\_modifiers.md) - * [MethodProp.HAS\_STATE\_VARIABLES\_READ](methodprop/methodprop.has\_state\_variables\_read.md) - * [MethodProp.HAS\_STATE\_VARIABLES\_WRITTEN](methodprop/methodprop.has\_state\_variables\_written.md) - * [MethodProp.INTERNAL](methodprop/methodprop.internal.md) - * [MethodProp.IS\_CONSTRUCTOR](methodprop/methodprop.is\_constructor.md) - * [MethodProp.IS\_GLOBAL](methodprop/methodprop.is\_global.md) - * [MethodProp.IS\_PAYABLE](methodprop/methodprop.is\_payable.md) - * [MethodProp.IS\_PURE](methodprop/methodprop.is\_pure.md) - * [MethodProp.IS\_VIEW](methodprop/methodprop.is\_view.md) - * [MethodProp.PRIVATE](methodprop/methodprop.private.md) - * [MethodProp.PUBLIC](methodprop/methodprop.public.md) -* [Modifier](modifier/README.md) - * [Modifier.functions()](modifier/modifier.functions.md) - * [Modifier.placer\_instructions()](modifier/modifier.placer\_instructions.md) -* [Modifiers](modifiers/README.md) - * [Modifiers.exec()](modifiers/modifiers.exec.md) - * [Modifiers.list()](modifiers/modifiers.list.md) - * [Modifiers.contracts()](modifiers/modifiers.contracts.md) - * [Modifiers.instructions()](modifiers/modifiers.instructions.md) -* [AssemblyInstruction](assemblyinstruction.md) -* [BreakInstruction](breakinstruction.md) -* [CatchInstruction](catchinstruction/README.md) - * [CatchInstruction.get\_block\_instructions()](catchinstruction/catchinstruction.get\_block\_instructions.md) -* [ContinueInstruction](continueinstruction.md) -* [EndAssemblyInstruction](endassemblyinstruction.md) -* [EndIfInstruction](endifinstruction.md) -* [EndLoopInstruction](endloopinstruction.md) -* [EntryPointInstruction](entrypointinstruction.md) -* [ExpressionInstruction](expressioninstruction.md) -* [IfInstruction](ifinstruction/README.md) - * [IfInstruction.first\_false\_instruction()](ifinstruction/ifinstruction.first\_false\_instruction.md) - * [IfInstruction.first\_true\_instruction()](ifinstruction/ifinstruction.first\_true\_instruction.md) - * [IfInstruction.get\_condition()](ifinstruction/ifinstruction.get\_condition.md) -* [IfLoopInstruction](ifloopinstruction.md) -* [Instruction](instruction/README.md) - * [Instruction.backward\_df()](instruction/instruction.backward\_df.md) - * [Instruction.callee\_names()](instruction/instruction.callee\_names.md) - * [Instruction.db\_id](instruction/instruction.db\_id.md) - * [Instruction.extended\_backward\_df()](instruction/instruction.extended\_backward\_df.md) - * [Instruction.forward\_df()](instruction/instruction.forward\_df.md) - * [Instruction.get\_callee\_values()](instruction/instruction.get\_callee\_values.md) - * [Instruction.get\_dest()](instruction/instruction.get\_dest.md) - * [Instruction.get\_operand()](instruction/instruction.get\_operand.md) - * [Instruction.get\_operands()](instruction/instruction.get\_operands.md) - * [Instruction.get\_parent()](instruction/instruction.get\_parent.md) - * [Instruction.has\_global\_df()](instruction/instruction.has\_global\_df.md) - * [Instruction.instruction\_data](instruction/instruction.instruction\_data.md) - * [Instruction.is\_assembly()](instruction/instruction.is\_assembly.md) - * [Instruction.is\_break()](instruction/instruction.is\_break.md) - * [Instruction.is\_call()](instruction/instruction.is\_call.md) - * [Instruction.is\_catch()](instruction/instruction.is\_catch.md) - * [Instruction.is\_cmp()](instruction/instruction.is\_cmp.md) - * [Instruction.is\_continue()](instruction/instruction.is\_continue.md) - * [Instruction.is\_end\_assembly()](instruction/instruction.is\_end\_assembly.md) - * [Instruction.is\_end\_if()](instruction/instruction.is\_end\_if.md) - * [Instruction.is\_end\_loop()](instruction/instruction.is\_end\_loop.md) - * [Instruction.is\_entry\_point()](instruction/instruction.is\_entry\_point.md) - * [Instruction.is\_expression()](instruction/instruction.is\_expression.md) - * [Instruction.is\_if()](instruction/instruction.is\_if.md) - * [Instruction.is\_if\_loop()](instruction/instruction.is\_if\_loop.md) - * [Instruction.is\_other\_entry\_point()](instruction/instruction.is\_other\_entry\_point.md) - * [Instruction.is\_placer()](instruction/instruction.is\_placer.md) - * [Instruction.is\_return()](instruction/instruction.is\_return.md) - * [Instruction.is\_start\_loop()](instruction/instruction.is\_start\_loop.md) - * [Instruction.is\_storage\_read()](instruction/instruction.is\_storage\_read.md) - * [Instruction.is\_storage\_write()](instruction/instruction.is\_storage\_write.md) - * [Instruction.is\_throw()](instruction/instruction.is\_throw.md) - * [Instruction.is\_try()](instruction/instruction.is\_try.md) - * [Instruction.next\_block()](instruction/instruction.next\_block.md) - * [Instruction.next\_instruction()](instruction/instruction.next\_instruction.md) - * [Instruction.next\_instructions()](instruction/instruction.next\_instructions.md) - * [Instruction.previous\_instruction()](instruction/instruction.previous\_instruction.md) - * [Instruction.previous\_instructions()](instruction/instruction.previous\_instructions.md) - * [Instruction.procedure\_graph](instruction/instruction.procedure\_graph.md) - * [Instruction.procedure\_graph\_node](instruction/instruction.procedure\_graph\_node.md) - * [Instruction.set\_procedure\_graph\_node()](instruction/instruction.set\_procedure\_graph\_node.md) - * [Instruction.solidity\_callee\_names()](instruction/instruction.solidity\_callee\_names.md) - * [Instruction.source\_code()](instruction/instruction.source\_code.md) - * [Instruction.source\_lines()](instruction/instruction.source\_lines.md) -* [Instructions](instructions/README.md) - * [Instructions.CALLEES](instructions/instructions.callees.md) - * [Instructions.asm\_instructions()](instructions/instructions.asm\_instructions.md) - * [Instructions.calls()](instructions/instructions.calls.md) - * [Instructions.delegate\_calls()](instructions/instructions.delegate\_calls.md) - * [Instructions.delegate\_calls\_from\_assembly()](instructions/instructions.delegate\_calls\_from\_assembly.md) - * [Instructions.delegate\_calls\_non\_assembly()](instructions/instructions.delegate\_calls\_non\_assembly.md) - * [Instructions.entry\_points()](instructions/instructions.entry\_points.md) - * [Instructions.exec()](instructions/instructions.exec.md) - * [Instructions.external\_calls()](instructions/instructions.external\_calls.md) - * [Instructions.functions()](instructions/instructions.functions.md) - * [Instructions.high\_level\_static\_calls()](instructions/instructions.high\_level\_static\_calls.md) - * [Instructions.if\_instructions()](instructions/instructions.if\_instructions.md) - * [Instructions.internal\_calls()](instructions/instructions.internal\_calls.md) - * [Instructions.library\_calls()](instructions/instructions.library\_calls.md) - * [Instructions.list()](instructions/instructions.list.md) - * [Instructions.low\_level\_calls()](instructions/instructions.low\_level\_calls.md) - * [Instructions.low\_level\_function\_calls()](instructions/instructions.low\_level\_function\_calls.md) - * [Instructions.low\_level\_static\_calls()](instructions/instructions.low\_level\_static\_calls.md) - * [Instructions.modifiers()](instructions/instructions.modifiers.md) - * [Instructions.static\_calls()](instructions/instructions.static\_calls.md) - * [Instructions.with\_called\_function\_name()](instructions/instructions.with\_called\_function\_name.md) - * [Instructions.with\_called\_function\_name\_not()](instructions/instructions.with\_called\_function\_name\_not.md) - * [Instructions.with\_called\_function\_name\_prefix()](instructions/instructions.with\_called\_function\_name\_prefix.md) - * [Instructions.with\_called\_function\_name\_suffix()](instructions/instructions.with\_called\_function\_name\_suffix.md) - * [Instructions.with\_called\_function\_signature()](instructions/instructions.with\_called\_function\_signature.md) - * [Instructions.with\_db\_id()](instructions/instructions.with\_db\_id.md) - * [Instructions.with\_ids()](instructions/instructions.with\_ids.md) -* [NewVariableInstruction](newvariableinstruction.md) -* [OtherEntrypointInstruction](otherentrypointinstruction.md) -* [PlaceholderInstruction](placeholderinstruction.md) -* [ReturnInstruction](returninstruction.md) -* [StartLoopInstruction](startloopinstruction.md) -* [ThrowInstruction](throwinstruction.md) -* [TryInstruction](tryinstruction/README.md) - * [TryInstruction.get\_block\_instructions()](tryinstruction/tryinstruction.get\_block\_instructions.md) -* [NoneObject](noneobject/README.md) - * [NoneObject.dump\_into\_json()](noneobject/noneobject.dump\_into\_json.md) - * [NoneObject.instructions()](noneobject/noneobject.instructions.md) - * [NoneObject.name()](noneobject/noneobject.name.md) -* [Queryable](queryable/README.md) - * [Queryable.query\_aggregator](queryable/queryable.query\_aggregator.md) -* [Variable](variable/README.md) - * [Variable.Properties](variable/variable.properties.md) - * [Variable.contract()](variable/variable.contract.md) - * [Variable.get\_getter()](variable/variable.get\_getter.md) - * [Variable.is\_constant()](variable/variable.is\_constant.md) - * [Variable.is\_immutable()](variable/variable.is\_immutable.md) - * [Variable.is\_internal()](variable/variable.is\_internal.md) - * [Variable.is\_private()](variable/variable.is\_private.md) - * [Variable.is\_public()](variable/variable.is\_public.md) - * [Variable.name()](variable/variable.name.md) - * [Variable.properties()](variable/variable.properties-1.md) - * [Variable.source\_code()](variable/variable.source\_code.md) - * [Variable.type()](variable/variable.type.md) -* [VariableProp](variableprop/README.md) - * [VariableProp.CONSTANT](variableprop/variableprop.constant.md) - * [VariableProp.IMMUTABLE](variableprop/variableprop.immutable.md) - * [VariableProp.INTERNAL](variableprop/variableprop.internal.md) - * [VariableProp.PRIVATE](variableprop/variableprop.private.md) - * [VariableProp.PUBLIC](variableprop/variableprop.public.md) -* [Variables](variables/README.md) - * [Variables.exec()](variables/variables.exec.md) - * [Variables.list()](variables/variables.list.md) - * [Variables.with\_all\_properties()](variables/variables.with\_all\_properties.md) - * [Variables.with\_name()](variables/variables.with\_name.md) - * [Variables.with\_one\_property()](variables/variables.with\_one\_property.md) - * [Variables.with\_type()](variables/variables.with\_type.md) diff --git a/API/argument/README.md b/API/argument/README.md deleted file mode 100644 index 2cc9e667..00000000 --- a/API/argument/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# Argument - diff --git a/API/argument/argument.backward_instructions.md b/API/argument/argument.backward_instructions.md deleted file mode 100644 index 17320f72..00000000 --- a/API/argument/argument.backward_instructions.md +++ /dev/null @@ -1,2 +0,0 @@ -# Argument.backward\_instructions() - diff --git a/API/argument/argument.data.md b/API/argument/argument.data.md deleted file mode 100644 index 61f80821..00000000 --- a/API/argument/argument.data.md +++ /dev/null @@ -1,42 +0,0 @@ -# Argument.data - -Returns the data of the Argument - -It contains the name, name\_ssa, canonical\_name, type and memory\_type of the Argument. - -```python -def query(): - functions = Functions().exec(100) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"Function Name": f.name(), "Arguments": []} - - # For each of its arguments... - for arg in f.arguments().list(): - # ...return the data of the argument - function["Arguments"].append({"Argument data": arg.data}) - function_with_args.append(function) - - return function_with_args -``` - -Output: - -```json -{ - "Function Name": "transferOwnership", - "Arguments": [ - { - "Argument data": { - "name": "newOwner", - "name_ssa": "newOwner_0", - "canonical_name": "Ownable.transferOwnership(address).newOwner", - "type": "address", - "memory_type": "memory" - } - } - ] -} -``` diff --git a/API/argument/argument.df_reaches_from_functions_arguments.md b/API/argument/argument.df_reaches_from_functions_arguments.md deleted file mode 100644 index e9ceaa95..00000000 --- a/API/argument/argument.df_reaches_from_functions_arguments.md +++ /dev/null @@ -1,2 +0,0 @@ -# Argument.df\_reaches\_from\_functions\_arguments() - diff --git a/API/argument/argument.df_reaching_functions_arguments.md b/API/argument/argument.df_reaching_functions_arguments.md deleted file mode 100644 index 77fb3785..00000000 --- a/API/argument/argument.df_reaching_functions_arguments.md +++ /dev/null @@ -1,2 +0,0 @@ -# Argument.df\_reaching\_functions\_arguments() - diff --git a/API/argument/argument.forward_instructions.md b/API/argument/argument.forward_instructions.md deleted file mode 100644 index a72a3965..00000000 --- a/API/argument/argument.forward_instructions.md +++ /dev/null @@ -1,2 +0,0 @@ -# Argument.forward\_instructions() - diff --git a/API/argument/argument.get_parent.md b/API/argument/argument.get_parent.md deleted file mode 100644 index 4800f072..00000000 --- a/API/argument/argument.get_parent.md +++ /dev/null @@ -1,2 +0,0 @@ -# Argument.get\_parent() - diff --git a/API/argument/argument.index.md b/API/argument/argument.index.md deleted file mode 100644 index 6e2ed1d5..00000000 --- a/API/argument/argument.index.md +++ /dev/null @@ -1,22 +0,0 @@ -# Argument.index - -Returns the index of the argument. - -```python -def query(): - functions = Functions().exec(100) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"Function Name": f.name(), "Arguments": []} - - # For each of its arguments... - for arg in f.arguments().list(): - # ...return the data of the argument - function["Arguments"].append({"Argument Index": arg.index}) - function_with_args.append(function) - - return function_with_args -``` - diff --git a/API/argument/argument.memory_type.md b/API/argument/argument.memory_type.md deleted file mode 100644 index d10a372a..00000000 --- a/API/argument/argument.memory_type.md +++ /dev/null @@ -1,34 +0,0 @@ -# Argument.memory\_type - -Returns the memory type of the argument. - -```python -def query(): - functions = Functions().exec(100) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"Function Name": f.name(), "Arguments": []} - - # For each of its arguments... - for arg in f.arguments().list(): - # ...return the data of the argument - function["Arguments"].append({"Argument memory type": arg.memory_type}) - function_with_args.append(function) - - return function_with_args -``` - -Output: - -```json -{ - "Function Name": "transferOwnership", - "Arguments": [ - { - "Argument memory type": "memory" - } - ] -} -``` diff --git a/API/argument/argument.name.md b/API/argument/argument.name.md deleted file mode 100644 index b317ffbc..00000000 --- a/API/argument/argument.name.md +++ /dev/null @@ -1,34 +0,0 @@ -# Argument.name - -Returns the name of the argument. - -```python -def query(): - functions = Functions().exec(100) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"Function Name": f.name(), "Arguments": []} - - # For each of its arguments... - for arg in f.arguments().list(): - # ...return the data of the argument - function["Arguments"].append({"Argument Name": arg.name}) - function_with_args.append(function) - - return function_with_args -``` - -Output: - -```json -{ - "Function Name": "transferOwnership", - "Arguments": [ - { - "Argument Name": "newOwner" - } - ] -} -``` diff --git a/API/argument/argument.procedure_graph_node.md b/API/argument/argument.procedure_graph_node.md deleted file mode 100644 index a4a3ff53..00000000 --- a/API/argument/argument.procedure_graph_node.md +++ /dev/null @@ -1,2 +0,0 @@ -# Argument.procedure\_graph\_node - diff --git a/API/argument/argument.source_code.md b/API/argument/argument.source_code.md deleted file mode 100644 index 8d7e5612..00000000 --- a/API/argument/argument.source_code.md +++ /dev/null @@ -1,38 +0,0 @@ -# Argument.source\_code() - -Returns the source code of the argument. - -```python -def query(): - functions = Functions().exec(100) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"Function Name": f.name(), "Arguments": []} - - # For each of its arguments... - for arg in f.arguments().list(): - # ...return the data of the argument - function["Arguments"].append({"Argument Source code": arg.source_code()}) - function_with_args.append(function) - - return function_with_args - -``` - -Output: - -```json -{ - "Function Name": "approve", - "Arguments": [ - { - "Argument Source code": "address to" - }, - { - "Argument Source code": "uint256 tokenId" - } - ] -} -``` diff --git a/API/argument/argument.type.md b/API/argument/argument.type.md deleted file mode 100644 index be1bea99..00000000 --- a/API/argument/argument.type.md +++ /dev/null @@ -1,34 +0,0 @@ -# Argument.type - -Returns the type of the argument. - -```python -def query(): - functions = Functions().exec(100) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"Function Name": f.name(), "Arguments": []} - - # For each of its arguments... - for arg in f.arguments().list(): - # ...return the data of the argument - function["Arguments"].append({"Argument type": arg.type}) - function_with_args.append(function) - - return function_with_args -``` - -Output: - -```json -{ - "Function Name": "transferOwnership", - "Arguments": [ - { - "Argument type": "address" - } - ] -} -``` diff --git a/API/arguments/README.md b/API/arguments/README.md deleted file mode 100644 index 4bb8fed1..00000000 --- a/API/arguments/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# Arguments - diff --git a/API/arguments/arguments.list.md b/API/arguments/arguments.list.md deleted file mode 100644 index 42d94ba9..00000000 --- a/API/arguments/arguments.list.md +++ /dev/null @@ -1,62 +0,0 @@ -# Arguments.list() - -Returns a list of all the arguments that are passed as parameters to the function. - -```python -def query(): - functions = Functions().exec(100) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"Function Name": f.name(), "Arguments": []} - - # For each of its arguments... - for arg in f.arguments().list(): - # ...return the data of the argument - function["Arguments"].append({"Argument data": arg.data}) - function_with_args.append(function) - - return function_with_args -``` - -Example of a ERC721 transferFrom function with 3 arguments - -ERC721.transferFrom(address from ,address to ,uint256 tokenId) - -Output: - -```json -{ - "Function Name": "transferFrom", - "Arguments": [ - { - "Argument data": { - "name": "from", - "name_ssa": "from_0", - "canonical_name": "ERC721.transferFrom(address,address,uint256).from", - "type": "address", - "memory_type": "memory" - } - }, - { - "Argument data": { - "name": "to", - "name_ssa": "to_0", - "canonical_name": "ERC721.transferFrom(address,address,uint256).to", - "type": "address", - "memory_type": "memory" - } - }, - { - "Argument data": { - "name": "tokenId", - "name_ssa": "tokenId_0", - "canonical_name": "ERC721.transferFrom(address,address,uint256).tokenId", - "type": "uint256", - "memory_type": "memory" - } - } - ] -} -``` diff --git a/API/arguments/arguments.with_memory_type.md b/API/arguments/arguments.with_memory_type.md deleted file mode 100644 index 4016a7d0..00000000 --- a/API/arguments/arguments.with_memory_type.md +++ /dev/null @@ -1,44 +0,0 @@ -# Arguments.with\_memory\_type() - -Returns a list of arguments having specified memory type. - -```python -def query(): - functions = Functions().exec(10000) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"Function Name": f.name(), "Arguments": []} - - # For each of its arguments... - for arg in f.arguments().with_memory_type("storage"): - # ...return the data of the arguent - function["Arguments"].append({"Argument data": arg.data}) - - if len(function["Arguments"]) > 0: - function_with_args.append(function) - - return function_with_args -``` - -Example of an Argument with the memory type storage - -Output: - -```json -{ - "Function Name": "current", - "Arguments": [ - { - "Argument data": { - "name": "counter", - "name_ssa": "counter_0 (-> ['STORAGE_counter'])", - "canonical_name": "Counters.current(Counters.Counter).counter", - "type": "Counters.Counter", - "memory_type": "storage" - } - } - ] -} -``` diff --git a/API/arguments/arguments.with_type.md b/API/arguments/arguments.with_type.md deleted file mode 100644 index 183c13bd..00000000 --- a/API/arguments/arguments.with_type.md +++ /dev/null @@ -1,44 +0,0 @@ -# Arguments.with\_type() - -Returns a list of arguments having specified memory type. - -```python -def query(): - functions = Functions().exec(1000) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"Function Name": f.name(), "Arguments": []} - - # For each of its arguments... - for arg in f.arguments().with_type("bytes32"): - # ...return the data of the arguent - function["Arguments"].append({"Argument data": arg.data}) - - if len(function["Arguments"]) > 0: - function_with_args.append(function) - - return function_with_args -``` - -Example of an Argument with the memory type bytes32 - -Output: - -```json -{ - "Function Name": "afterAgreementCreated", - "Arguments": [ - { - "Argument data": { - "name": "_agreementId", - "name_ssa": "_agreementId_0", - "canonical_name": "LTP.afterAgreementCreated(ISuperToken,address,bytes32,bytes,bytes,bytes)._agreementId", - "type": "bytes32", - "memory_type": "memory" - } - } - ] -} -``` diff --git a/API/arguments/arguments.with_type_convertible.md b/API/arguments/arguments.with_type_convertible.md deleted file mode 100644 index 4e624726..00000000 --- a/API/arguments/arguments.with_type_convertible.md +++ /dev/null @@ -1,36 +0,0 @@ -# Arguments.with\_type\_convertible() - -Returns a list of arguments that can be converted to specified types. Convertor will define a table of allowed conversions. - -```python -from glider import * - -def query(): - # Create a Convertor object - convertor = Convertor() - - # Add a conversion from address to bytes20 - convertor.add("address", "bytes20") - - # Fetch a list of functions - funs = Functions().exec(10) - - # Return the functions with at least one argument convertible to bytes20 - # It will be only the argument of type address - output = [] - for fun in funs: - args = fun.arguments().with_type_convertible(["bytes20"], convertor) - if args: - output.append(fun) - return output -``` - -Output: - -```json -{ - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - "sol_function": "function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0),\"Ownable: new owner is the zero address\");\n _setOwner(newOwner);\n }" -} -``` diff --git a/API/assemblyinstruction.md b/API/assemblyinstruction.md deleted file mode 100644 index 978c61a5..00000000 --- a/API/assemblyinstruction.md +++ /dev/null @@ -1,2 +0,0 @@ -# AssemblyInstruction - diff --git a/API/breakinstruction.md b/API/breakinstruction.md deleted file mode 100644 index be43448b..00000000 --- a/API/breakinstruction.md +++ /dev/null @@ -1,2 +0,0 @@ -# BreakInstruction - diff --git a/API/callable/README.md b/API/callable/README.md deleted file mode 100644 index 611d2c6f..00000000 --- a/API/callable/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# Callable - diff --git a/API/callable/callable.arguments.md b/API/callable/callable.arguments.md deleted file mode 100644 index 4f4adf3f..00000000 --- a/API/callable/callable.arguments.md +++ /dev/null @@ -1,54 +0,0 @@ ---- -description: Returns an Arguments object for the arguments of the function/modifier. ---- - -# Callable.arguments() - -## Return type - -→ [Arguments](../arguments/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - function_with_args = [] - for f in functions: - # Prepare the object for this function - function = {"function": f.name(), "args": []} - - # For each of its arguments... - for arg in f.arguments().list(): - # ...return the type and name - function["args"].append({"type": arg.type, "name": arg.name}) - - # Add the function to the array only if it has at least one argument - if len(function["args"]) > 0: - function_with_args.append(function) - - return function_with_args -``` - -## Example output - -```json -[ - { - "function": "approve", - "args": [ - { - "type": "address", - "name": "to" - }, - { - "type": "uint256", - "name": "tokenId" - } - ] - }, - ... -] -``` diff --git a/API/callable/callable.asm_instructions.md b/API/callable/callable.asm_instructions.md deleted file mode 100644 index 2133a7af..00000000 --- a/API/callable/callable.asm_instructions.md +++ /dev/null @@ -1,67 +0,0 @@ ---- -description: >- - Returns an Instructions object for the assembly instructions of the - function/modifier. ---- - -# Callable.asm\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - asm_instructions = [] - for function in functions: - for instruction in function.asm_instructions().exec(): - # Return the assembly instructions for each function - asm_instructions.append(instruction) - - return asm_instructions -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "ERC721", - // Formatted for the example - "sol_function": ` - function _checkOnERC721Received( - address from,address to,uint256 tokenId,bytes memory _data - ) private returns (bool) { - if (to.isContract()) { - try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) { - return retval == IERC721Receiver.onERC721Received.selector; - } catch (bytes memory reason) { - if (reason.length == 0) { - revert("ERC721: transfer to non ERC721Receiver implementer"); - } else { - assembly { - revert(add(32,reason),mload(reason)) - } - } - } - } else { - return true; - } - } - `, - // Formatted for the example - "sol_instruction": ` - assembly { - revert(add(32,reason),mload(reason)) - } - ` - }, - ... -] -``` diff --git a/API/callable/callable.break_instructions.md b/API/callable/callable.break_instructions.md deleted file mode 100644 index 44d79730..00000000 --- a/API/callable/callable.break_instructions.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -description: Returns break instructions of the function/modifier. ---- - -# Callable.break\_instructions() - -## Return type - -→ List\[[Instruction](../instruction/)] - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - results = [] - for function in functions: - # For each function, return each break instruction - for instruction in function.break_instructions(): - results.append(instruction) - - return results -``` - -## Example output - -```json -[ - { - "contract": "0x0000000000000000000000000000000000000001", - "contract_name": "MockContract", - // Formatted for the example - "sol_function": ` - function functionWithBreak(uint256 _length, uint256 _index) external { - require(_index < _length, "Index out of bounds"); - for (uint256 i = 0; i < _length; i++) { - if (i == _index) { - break; - } - } - } - `, - "sol_instruction": "break" - }, - ... -] -``` diff --git a/API/callable/callable.callee_values.md b/API/callable/callable.callee_values.md deleted file mode 100644 index 257af771..00000000 --- a/API/callable/callable.callee_values.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -description: >- - Returns a list of Call objects that represents called functions from the - function/modifier. ---- - -# Callable.callee\_values() - -## Return type - -→ List\[[Call](../callnode/)] - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - results = [] - for function in functions: - for call in function.callee_values(): - # Return the expression (code) of each call in each function - results.append({"function": function.name(), "call": call.expression}) - - return results -``` - -## Example output - -```json -[ - { - "function": "transferOwnership", - "call": "require(bool,string)(newOwner != address(0),\"Ownable: new owner is the zero address\")" - }, - { - "function": "transferOwnership", - "call": "_setOwner(newOwner)" - }, - ... -] -``` diff --git a/API/callable/callable.calls_instructions.md b/API/callable/callable.calls_instructions.md deleted file mode 100644 index ed741dab..00000000 --- a/API/callable/callable.calls_instructions.md +++ /dev/null @@ -1,47 +0,0 @@ ---- -description: >- - Returns an Instructions object for the call instructions of the - function/modifier. ---- - -# Callable.calls\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - calls_instructions = [] - for function in functions: - # List all call instructions in the given functions - for instruction in function.calls_instructions().exec(): - calls_instructions.append(instruction) - - return calls_instructions -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - "sol_function": "constructor() {\\n _setOwner(_msgSender());\\n }", - "sol_instruction": "_setOwner(_msgSender())" - }, - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - "sol_function": "constructor() {\\n _setOwner(_msgSender());\\n }", - "sol_instruction": "_setOwner(_msgSender())" - }, - ... -] -``` diff --git a/API/callable/callable.catch_instructions.md b/API/callable/callable.catch_instructions.md deleted file mode 100644 index 58c1035f..00000000 --- a/API/callable/callable.catch_instructions.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -description: Returns catch instructions of the function/modifier. ---- - -# Callable.catch\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - catch_instructions = [] - for function in functions: - # List all catch instructions inside a try/catch block from the given functions - for instruction in function.catch_instructions(): - catch_instructions.append(instruction) - - return catch_instructions -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "ERC721", - "sol_function": ` - // Formatted for the example - function _checkOnERC721Received(address from, address to, uint256 tokenId, bytes memory _data) private returns (bool) { - if (to.isContract()) { - try IERC721Receiver(to).onERC721Received(_msgSender(), from, tokenId, _data) returns (bytes4 retval) { - return retval == IERC721Receiver.onERC721Received.selector; - } catch (bytes memory reason) { - if (reason.length == 0) { - revert("ERC721: transfer to non ERC721Receiver implementer"); - } else { - assembly { - revert(add(32, reason), mload(reason)) - } - } - } - } else { - return true; - } - } - `, - "sol_instruction": ` - // Formatted for the example - catch (bytes memory reason) { - if (reason.length == 0) { - revert("ERC721: transfer to non ERC721Receiver implementer"); - } else { - assembly { - revert(add(32,reason),mload(reason)) - } - } - } - ` - }, - ... -] -``` diff --git a/API/callable/callable.continue_instructions.md b/API/callable/callable.continue_instructions.md deleted file mode 100644 index 04c5f9a6..00000000 --- a/API/callable/callable.continue_instructions.md +++ /dev/null @@ -1,63 +0,0 @@ ---- -description: Returns continue instructions of the function/modifier. ---- - -# Callable.continue\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - continue_instructions = [] - for function in functions: - # List all continue instructions inside the given functions - for instruction in function.continue_instructions().exec(): - continue_instructions.append(instruction) - - return continue_instructions -``` - -## Example output - -```json -[ - { - "contract": "0x31Cef25171d9b06B6A8eF9dEBBFCf84c9aaB5A32", - "contract_name": "Vault", - // Formatted for the example - "sol_function": ` - function reclaimTokens(address to,address[] memory tokens) external { - IProtocolGovernance governance = _vaultGovernance.internalParams().protocolGovernance; - bool isProtocolAdmin = governance.isAdmin(msg.sender); - require(isProtocolAdmin || _isApprovedOrOwner(msg.sender),"ADM"); - if (!isProtocolAdmin) { - require(_isValidPullDestination(to),"INTRA"); - } - - uint256[] memory tokenAmounts = new uint256[](tokens.length); - - for (uint256 i = 0; i < tokens.length; i++) { - IERC20 token = IERC20(tokens[i]); - tokenAmounts[i] = token.balanceOf(address(this)); - if (tokenAmounts[i] == 0) { - continue; - } - token.safeTransfer(to,tokenAmounts[i]); - } - - _postReclaimTokens(to,tokens); - emit ReclaimTokens(to,tokens,tokenAmounts); - } - `, - "sol_instruction": "continue" - }, - ... -] -``` diff --git a/API/callable/callable.db_id.md b/API/callable/callable.db_id.md deleted file mode 100644 index 21fe6661..00000000 --- a/API/callable/callable.db_id.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -description: Returns the unique identifier of the function/modifier. ---- - -# Callable.db\_id - -## Return type - -→ str - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - ids = [] - for function in functions: - # Aggregate the ids of all functions - ids.append(function.db_id) - - return ids -``` - -## Example output - -```json -[ - "functions/96e8caf747cd59ead8760cead194a8d0", - "functions/ad2bdc3eb0a637e61c001cd0fb29eb29", - ... -] -``` diff --git a/API/callable/callable.dump_into_json.md b/API/callable/callable.dump_into_json.md deleted file mode 100644 index db1f5713..00000000 --- a/API/callable/callable.dump_into_json.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -description: Returns a serialized JSON representation of the function/modifier. ---- - -# Callable.dump\_into\_json() - -## Return type - -→ Dict - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - json = [] - for function in functions: - # Get serialized informations about each function - json.append(function.dump_into_json()) - - return json -``` - -## Example output - -```json -[ - { - "_key": "96e8caf747cd59ead8760cead194a8d0", - "_id": "functions/96e8caf747cd59ead8760cead194a8d0", - "_rev": "_h_ZmbDi---", - "name": "_msgSender", - "relative_filepath": "../smart-contract-sanctuary-ethereum/contracts/kovan/79/798AcB51D8FBc97328835eE2027047a8B54533AD_LTP.sol", - "signature": "_msgSender()", - "hashed_signature": 295563871, - "is_override": false, - "first_source_line": 19, - "last_source_line": 21, - "start_column": 5, - "end_column": 6, - "declarer_contract_name": "Context", - "callees": { - "internal": [], - "high_level": [], - "library_calls": [], - "low_level": [], - "solidity": [] - }, - "args": [], - "local_vars": [], - "state_variables_read": [], - "state_variables_written": [], - "modifiers": [], - "is_constructor": false, - "is_payable": false, - "is_pure": false, - "is_view": true, - "visibility": "internal", - "edges": [[0, 1]], - "errors": [], - "return": [["address", ""]], - "is_global": false - }, - ... -] -``` diff --git a/API/callable/callable.end_assembly_instructions.md b/API/callable/callable.end_assembly_instructions.md deleted file mode 100644 index 7aa603d3..00000000 --- a/API/callable/callable.end_assembly_instructions.md +++ /dev/null @@ -1,65 +0,0 @@ ---- -description: Returns end_assembly instructions of the function/modifier. ---- - -# Callable.end\_assembly\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - assembly = [] - for function in functions: - for asm_instruction in function.end_assembly_instructions(): - # For each function, return the assembly instructions - assembly.append(asm_instruction) - - return assembly -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "ERC721URIStorage", - "sol_function": ` - // Formatted for the example - function _checkOnERC721Received( - address from,address to,uint256 tokenId,bytes memory _data - ) private returns (bool) { - if (to.isContract()) { - try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) { - return retval == IERC721Receiver.onERC721Received.selector; - } catch (bytes memory reason) { - if (reason.length == 0) { - revert("ERC721: transfer to non ERC721Receiver implementer"); - } else { - assembly { - revert(add(32,reason),mload(reason)) - } - } - } - } else { - return true; - } - } - `, - "sol_instruction": ` - // Formatted for the example - assembly { - revert(add(32,reason),mload(reason)) - } - ` - }, - ... -] -``` diff --git a/API/callable/callable.end_if_instructions.md b/API/callable/callable.end_if_instructions.md deleted file mode 100644 index 734bd48c..00000000 --- a/API/callable/callable.end_if_instructions.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -description: Returns end_if instructions of the function/modifier. ---- - -# Callable.end\_if\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - conditional = [] - for function in functions: - for if_instruction in function.end_if_instructions(): - # For each function, return the conditional (if) instructions - conditional.append(if_instruction) - - return conditional -``` - -## Example output - -```json -[ - { - "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2", - "contract_name": "Pausable", - "sol_function": ` - // Formatted for the example - function setPaused(bool _paused) external onlyOwner { - if (_paused == paused) { - return; - } - - paused = _paused; - - if (paused) { - lastPauseTime = block.timestamp; - } - - emit PauseChanged(paused); - } - `, - "sol_instruction": ` - // Formatted for the example - if (_paused == paused) { - return; - } - `, - }, - { - ... - "sol_instruction": ` - // Formatted for the example - if (paused) { - lastPauseTime = block.timestamp; - } - `, - } - ... -] -``` diff --git a/API/callable/callable.end_loop_instructions.md b/API/callable/callable.end_loop_instructions.md deleted file mode 100644 index 8bf645ef..00000000 --- a/API/callable/callable.end_loop_instructions.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -description: Returns end_loop instructions of the function/modifier. ---- - -# Callable.end\_loop\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - loop = [] - for function in functions: - for loop_instruction in function.end_loop_instructions(): - # For each function, return the loop instructions - loop.append(loop_instruction) - - return loop -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Strings", - "sol_function": ` - // Formatted for the example - function toString(uint256 value) internal pure returns (string memory) { - if (value == 0) { - return "0"; - } - - uint256 temp = value; - uint256 digits; - - while (temp != 0) { - digits++; - temp /= 10; - } - - bytes memory buffer = new bytes(digits); - while (value != 0) { - digits -= 1; - buffer[digits] = bytes1(uint8(48 + uint256(value % 10))); - value /= 10; - } - - return string(buffer); - } - `, - "sol_instruction": ` - // Formatted for the example - while (temp != 0) { - digits++; - temp /= 10; - } - `, - }, - ... -] -``` diff --git a/API/callable/callable.entry_point_instructions.md b/API/callable/callable.entry_point_instructions.md deleted file mode 100644 index 37cc3f1e..00000000 --- a/API/callable/callable.entry_point_instructions.md +++ /dev/null @@ -1,65 +0,0 @@ ---- -description: Returns entry_point instructions of the function/modifier. ---- - -# Callable.entry\_point\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - entry_points = [] - for function in functions: - for entry_point_instruction in function.entry_point_instructions(): - # For each function, return entry points - entry_points.append(entry_point_instruction) - - return entry_points -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Context", - "sol_function": ` - // Formatted for the example - function _msgData() internal view virtual returns (bytes calldata) { - return msg.data; - } - `, - "sol_instruction": ` - // Formatted for the example - { - return msg.data; - } - ` - }, - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - "sol_function": ` - // Formatted for the example - constructor() { - _setOwner(_msgSender()); - } - `, - "sol_instruction": ` - // Formatted for the example - { - _setOwner(_msgSender()); - } - ` - }, - ... -] -``` diff --git a/API/callable/callable.expression_instructions.md b/API/callable/callable.expression_instructions.md deleted file mode 100644 index 1429dad5..00000000 --- a/API/callable/callable.expression_instructions.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -description: Returns expression instructions of the function/modifier. ---- - -# Callable.expression\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - expressions = [] - for function in functions: - for exp_instruction in function.expression_instructions(): - # For each function, return the expressions - expressions.append(exp_instruction) - - return expressions -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - "sol_function": ` - // Formatted for the example - constructor() { - _setOwner(_msgSender()); - } - `, - "sol_instruction": "_setOwner(_msgSender())" - }, - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - "sol_function": ` - // Formatted for the example - function renounceOwnership() public virtual onlyOwner { - _setOwner(address(0)); - } - `, - "sol_instruction": "_setOwner(address(0))" - }, - ... -] -``` diff --git a/API/callable/callable.get_all_called.md b/API/callable/callable.get_all_called.md deleted file mode 100644 index 06e0a121..00000000 --- a/API/callable/callable.get_all_called.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -description: >- - Returns a Functions object that represents called functions from the - function/modifier. ---- - -# Callable.get\_all\_called() - -## Return type - -→ [Functions](../functions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(100) - - called_functions = [] - for function in functions: - for called in function.get_all_called().exec(): - # Return each called function from this specific one - called_functions.append(called) - - return called_functions -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - // Formatted for the example - "sol_function": ` - function _msgSender() internal view virtual returns (address) { - return msg.sender; - } - ` - }, - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - // Formatted for the example - "sol_function": ` - function _setOwner(address newOwner) private { - address oldOwner = _owner; - _owner = newOwner; - emit OwnershipTransferred(oldOwner,newOwner); - } - ` - }, - ... -] -``` diff --git a/API/callable/callable.get_contract.md b/API/callable/callable.get_contract.md deleted file mode 100644 index 20597361..00000000 --- a/API/callable/callable.get_contract.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -description: >- - Returns the parent contract of the function/modifier if exists, otherwise - (global functions) returns NoneObject. ---- - -# Callable.get\_contract() - -## Return type - -→ [Contract](../contract/) | NoneObject - -## Example - -```python -from glider import * -def query(): - functions = Functions().with_modifiers_name_not(["onlyOwner"]).exec(100) - - contracts = [] - for function in functions: - # For each function without an "onlyOwner" modifier, return the contract - contracts.append(function.get_contract()) - - return contracts -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "IERC721" - }, - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "IERC721Metadata" - }, - ... -] -``` diff --git a/API/callable/callable.get_pg.md b/API/callable/callable.get_pg.md deleted file mode 100644 index a7a99552..00000000 --- a/API/callable/callable.get_pg.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -description: Constructs and returns procedure graph of the function/modifier. ---- - -# Callable.get\_pg() - -## Return type - -→ ProcedureGraph - -## Example - -```python -from glider import * -def query(): - functions = Functions().with_modifiers_name_not(["onlyOwner"]).exec(100) - - state_variables = [] - for function in functions: - # For each function without an "onlyOwner" modifier, return all state variables in the procedure graph - for state_var in function.get_pg().get_state_variables(): - state_variables.append(state_var.to_json()) - - return state_variables -``` - -## Example output - -```json -[ - { "id": -2, "node": "Ownable._owner", "type": "state_variable" }, - { "id": -8, "node": "VRFConsumerBase.nonces", "type": "state_variable" }, - { "id": -7, "node": "VRFConsumerBase.vrfCoordinator", "type": "state_variable" }, - { "id": -6, "node": "VRFConsumerBase.LINK", "type": "state_variable" } -] -``` diff --git a/API/callable/callable.hashed_signature.md b/API/callable/callable.hashed_signature.md deleted file mode 100644 index 4c05ac40..00000000 --- a/API/callable/callable.hashed_signature.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -description: Returns keccak256 hash of the function's or modifier's signature. ---- - -# Callable.hashed\_signature() - -## Return type - -→ int - -## Example - -```python -from glider import * -def query(): - functions = Functions().with_modifiers_name_not(["onlyOwner"]).exec(100) - - functions_with_sig = [] - for function in functions: - # For each function without an "onlyOwner" modifier, return the hashed signature - functions_with_sig.append({"function": function.name(), "sig": function.hashed_signature()}) - - return functions_with_sig -``` - -## Example output - -```json -[ - { - "function": "ownerOf", - "sig": 1666326814 - }, - { - "function": "balanceOf", - "sig": 1889567281 - }, - { - "function": "transferFrom", - "sig": 599290589 - }, - ... -] -``` diff --git a/API/callable/callable.if_instructions.md b/API/callable/callable.if_instructions.md deleted file mode 100644 index 65d57257..00000000 --- a/API/callable/callable.if_instructions.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -description: Returns if instructions of the function/modifier. ---- - -# Callable.if\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().with_modifiers_name_not(["onlyOwner"]).exec(100) - - if_instructions = [] - for function in functions: - # For each function without an "onlyOwner" modifier, return the if instructions - for instruction in function.if_instructions(): - if_instructions.append(instruction) - - return if_instructions -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "ERC721URIStorage", - "sol_function": ` - // Formatted for the example - function tokenURI(uint256 tokenId) public view virtual override returns (string memory) { - require(_exists(tokenId),"ERC721URIStorage: URI query for nonexistent token"); - string memory _tokenURI = _tokenURIs[tokenId]; - string memory base = _baseURI(); - - if (bytes(base).length == 0) { - return _tokenURI; - } - - if (bytes(_tokenURI).length > 0) { - return string(abi.encodePacked(base,_tokenURI)); - } - - return super.tokenURI(tokenId); - } - `, - "sol_instruction": "bytes(base).length == 0" - }, - { - ... - "sol_instruction": "bytes(_tokenURI).length > 0" - }, - ... -] -``` diff --git a/API/callable/callable.if_loop_instructions.md b/API/callable/callable.if_loop_instructions.md deleted file mode 100644 index d7a66179..00000000 --- a/API/callable/callable.if_loop_instructions.md +++ /dev/null @@ -1,52 +0,0 @@ ---- -description: Returns if_loop instructions of the function/modifier. ---- - -# Callable.if\_loop\_instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().with_modifiers_name_not(["onlyOwner"]).exec(100) - - if_loop_instructions = [] - for function in functions: - # For each function without an "onlyOwner" modifier, return the if loop instructions - for instruction in function.if_loop_instructions(): - if_loop_instructions.append(instruction) - - return if_loop_instructions -``` - -## Example output - -```json -[ - { - "contract": "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23", - "contract_name": "WadRayMath", - "sol_function": ` - // Formatted for the example - function rayPow(uint256 x,uint256 n) internal pure returns (uint256 z) { - z = n % 2 != 0 ? x : _RAY; - - for (n /= 2; n != 0; n /= 2) { - x = rayMul(x,x); - - if (n % 2 != 0) { - z = rayMul(z,x); - } - } - } - `, - "sol_instruction": "n != 0" - }, - ... -] -``` diff --git a/API/callable/callable.instruction_with_id.md b/API/callable/callable.instruction_with_id.md deleted file mode 100644 index ebe5433a..00000000 --- a/API/callable/callable.instruction_with_id.md +++ /dev/null @@ -1,38 +0,0 @@ ---- -description: Returns an Instruction object with specified id from function. ---- - -# Callable.instruction\_with\_id() - -## Return type - -→ [Instruction](../instruction/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().with_modifiers_name_not(["onlyOwner"]).exec(100) - - # Return the instruction with a specific id in a function - return [functions[0].instruction_with_id(1)] -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Context", - "sol_function": ` - // Formatted for the example - function _msgSender() internal view virtual returns (address) { - return msg.sender; - } - `, - "sol_instruction": "return msg.sender" - } -] -``` diff --git a/API/callable/callable.instructions.md b/API/callable/callable.instructions.md deleted file mode 100644 index 01caaea7..00000000 --- a/API/callable/callable.instructions.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -description: Returns an Instructions object for the instructions of the function/modifier. ---- - -# Callable.instructions() - -## Return type - -→ [Instructions](../instructions/) - -## Example - -```python -from glider import * -def query(): - functions = Functions().exec(1) - - instructions = [] - for instruction in functions[0].instructions().exec(): - # Return an array of all instructions for a function - instructions.append(instruction) - - return instructions -``` - -## Example output - -```json -[ - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - "sol_function": "function renounceOwnership() public virtual onlyOwner {\\n _setOwner(address(0));\\n }", - "sol_instruction": "_setOwner(address(0))" - }, - { - "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD", - "contract_name": "Ownable", - "sol_function": "function renounceOwnership() public virtual onlyOwner {\\n _setOwner(address(0));\\n }", - "sol_instruction": "onlyOwner" - } -] -``` diff --git a/API/callable/callable.name.md b/API/callable/callable.name.md deleted file mode 100644 index b56872b0..00000000 --- a/API/callable/callable.name.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -description: Returns the function's or modifier's name. ---- - -# Callable.name() - -## Return type - -→ str - -## Example - -```python -from glider import * -def query(): - contracts = Contracts().exec(100) - - contracts_with_callables = [] - for c in contracts: - contract = {"name": c.name, "functions": [], "modifiers": []} - # Aggregate the name of all functions for each contract - for function in c.functions().exec(): - contract["functions"].append(function.name()) - - # Same for modifiers - for modifier in c.modifiers().list(): - contract["modifiers"].append(modifier.name()) - - contracts_with_callables.append(contract) - - return contracts_with_callables -``` - -## Example output - -
[
- {
- "name": "IERC20",
- "functions": [
- "totalSupply",
- "balanceOf",
- "transfer",
- "allowance",
- "approve",
- "transferFrom"
- ],
- "modifiers": []
- },
- {
- "name": "IERC777",
- "functions": [
- "name",
- "symbol",
- "granularity",
- "totalSupply",
- "balanceOf",
- "send",
- "burn",
- "isOperatorFor",
- "authorizeOperator",
- "revokeOperator",
- "defaultOperators",
- "operatorSend",
- "operatorBurn"
- ],
- "modifiers": []
- },
- ...
-]
-
diff --git a/API/callable/callable.signature.md b/API/callable/callable.signature.md
deleted file mode 100644
index 396b26fb..00000000
--- a/API/callable/callable.signature.md
+++ /dev/null
@@ -1,40 +0,0 @@
----
-description: Returns the function's or modifier's signature.
----
-
-# Callable.signature()
-
-## Return type
-
-→ str
-
-## Example
-
-```python
-from glider import *
-def query():
- functions = Functions().exec(100)
-
- functions_with_sig = []
- for function in functions:
- # Aggregate the signature of each function along with their name
- functions_with_sig.append({"function": function.name(), "sig": function.signature()})
-
- return functions_with_sig
-```
-
-## Example output
-
-```json
-[
- {
- "function": "transferOwnership",
- "sig": "transferOwnership(address)"
- },
- {
- "function": "safeTransferFrom",
- "sig": "safeTransferFrom(address,address,uint256)"
- },
- ...
-]
-```
diff --git a/API/callable/callable.source_code.md b/API/callable/callable.source_code.md
deleted file mode 100644
index 7982e5cf..00000000
--- a/API/callable/callable.source_code.md
+++ /dev/null
@@ -1,50 +0,0 @@
----
-description: Returns the source code of the function/modifier.
----
-
-# Callable.source\_code()
-
-## Return type
-
-→ str
-
-## Example
-
-```python
-from glider import *
-def query():
- functions = Functions().exec(100)
-
- functions_code = []
- for function in functions:
- # Aggregate the code of each function along with their name
- functions_code.append({"function": function.name(), "code": function.source_code()})
-
- return functions_code
-```
-
-## Example output
-
-```json
-[
- {
- "function": "_msgSender",
- "code": `
- // Formatted for the example
- function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }
- `
- },
- {
- "function": "renounceOwnership",
- "code": `
- // Formatted for the example
- function renounceOwnership() public virtual onlyOwner {
- _setOwner(address(0));
- }
- `
- },
- ...
-]
-```
diff --git a/API/callable/callable.source_line.md b/API/callable/callable.source_line.md
deleted file mode 100644
index 7d63d29a..00000000
--- a/API/callable/callable.source_line.md
+++ /dev/null
@@ -1,44 +0,0 @@
----
-description: Returns the function's or modifier's source line numbers.
----
-
-# Callable.source\_line()
-
-## Return type
-
-→ int
-
-## Example
-
-```python
-from glider import *
-def query():
- functions = Functions().exec(100)
-
- functions_location = []
- for function in functions:
- # Return the source line number of each function
- functions_location.append({"function": function.name(), "line": function.source_line()})
-
- return functions_location
-```
-
-## Example output
-
-```json
-[
- {
- "function": "name",
- "line": 229
- },
- {
- "function": "symbol",
- "line": 234
- },
- {
- "function": "tokenURI",
- "line": 239
- },
- ...
-]
-```
diff --git a/API/callable/callable.start_loop_instructions.md b/API/callable/callable.start_loop_instructions.md
deleted file mode 100644
index dabbe5ee..00000000
--- a/API/callable/callable.start_loop_instructions.md
+++ /dev/null
@@ -1,62 +0,0 @@
----
-description: Returns start_loop instructions of the function/modifier.
----
-
-# Callable.start\_loop\_instructions()
-
-## Return type
-
-→ [Instructions](../instructions/)
-
-## Example
-
-```python
-from glider import *
-def query():
- functions = Functions().exec(100)
-
- loop_instructions = []
- for function in functions:
- for instruction in function.start_loop_instructions():
- # Return the starting loop instructions for each function
- loop_instructions.append(instruction)
-
- return loop_instructions
-```
-
-## Example output
-
-```json
-[
- {
- "contract": "0x27A05e7a40F2d980F8853e94c3cE54C70e68527D",
- "contract_name": "Strings",
- "sol_function": `
- // Formatted for the example
- function toHexString(uint256 value) internal pure returns (string memory) {
- if (value == 0) {
- return "0x00";
- }
-
- uint256 temp = value;
- uint256 length = 0;
-
- while (temp != 0) {
- length++;
- temp >>= 8;
- }
-
- return toHexString(value,length);
- }
- `,
- "sol_instruction": `
- // Formatted for the example
- while (temp != 0) {
- length++;
- temp >>= 8;
- }
- `
- },
- ...
-]
-```
diff --git a/API/callable/callable.throw_instructions.md b/API/callable/callable.throw_instructions.md
deleted file mode 100644
index 9b947d1e..00000000
--- a/API/callable/callable.throw_instructions.md
+++ /dev/null
@@ -1,29 +0,0 @@
----
-description: Returns throw instructions of the function/modifier.
----
-
-# Callable.throw\_instructions()
-
-## Return type
-
-→ [Instructions](../instructions/)
-
-## Example
-
-```python
-from glider import *
-def query():
- functions = Functions().exec(100)
-
- throw_instructions = []
- for function in functions:
- for instruction in function.throw_instructions().exec():
- # Return the throw instructions for each function
- throw_instructions.append(instruction)
-
- return throw_instructions
-```
-
-## Example output
-
-NO\_OUTPUT/MEMORY\_LIMIT
diff --git a/API/callable/callable.try_instructions.md b/API/callable/callable.try_instructions.md
deleted file mode 100644
index 5b3ef736..00000000
--- a/API/callable/callable.try_instructions.md
+++ /dev/null
@@ -1,73 +0,0 @@
----
-description: Returns try instructions of the function/modifier.
----
-
-# Callable.try\_instructions()
-
-## Return type
-
-→ [Instructions](../instructions/)
-
-## Example
-
-```python
-from glider import *
-def query():
- functions = Functions().exec(100)
-
- try_instructions = []
- for function in functions:
- for instruction in function.try_instructions():
- # Return the try instructions for each function
- try_instructions.append(instruction)
-
- return try_instructions
-```
-
-## Example output
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": `
- // Formatted for the example
- function _checkOnERC721Received(
- address from,address to,uint256 tokenId,bytes memory _data
- ) private returns (bool) {
- if (to.isContract()) {
- try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {
- return retval == IERC721Receiver.onERC721Received.selector;
- } catch (bytes memory reason) {
- if (reason.length == 0) {
- revert("ERC721: transfer to non ERC721Receiver implementer");
- } else {
- assembly {
- revert(add(32,reason),mload(reason))
- }
- }
- }
- } else {
- return true;
- }
- }
- `,
- "sol_instruction": `
- // Formatting for the example
- try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {
- return retval == IERC721Receiver.onERC721Received.selector;
- } catch (bytes memory reason) {
- if (reason.length == 0) {
- revert("ERC721: transfer to non ERC721Receiver implementer");
- } else {
- assembly {
- revert(add(32,reason),mload(reason))
- }
- }
- }
- `
- },
- ...
-]
-```
diff --git a/API/callables/README.md b/API/callables/README.md
deleted file mode 100644
index 391c0d16..00000000
--- a/API/callables/README.md
+++ /dev/null
@@ -1,83 +0,0 @@
-# Callables
-
-The Callables class is the base class for the [Functions](../functions/) and [Modifiers](../modifiers/) classes, and implements a series of methods common to both Functions and Modifiers:
-
-{% content-ref url="callables.contracts.md" %}
-[callables.contracts.md](callables.contracts.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.instructions.md" %}
-[callables.instructions.md](callables.instructions.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.name_prefix.md" %}
-[callables.name\_prefix.md](callables.name\_prefix.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.name_prefixes.md" %}
-[callables.name\_prefixes.md](callables.name\_prefixes.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.name_regex.md" %}
-[callables.name\_regex.md](callables.name\_regex.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.name_regexes.md" %}
-[callables.name\_regexes.md](callables.name\_regexes.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.name_suffix.md" %}
-[callables.name\_suffix.md](callables.name\_suffix.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.name_suffixes.md" %}
-[callables.name\_suffixes.md](callables.name\_suffixes.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_arg_count.md" %}
-[callables.with\_arg\_count.md](callables.with\_arg\_count.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_arg_memory_type.md" %}
-[callables.with\_arg\_memory\_type.md](callables.with\_arg\_memory\_type.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_arg_name.md" %}
-[callables.with\_arg\_name.md](callables.with\_arg\_name.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_arg_type.md" %}
-[callables.with\_arg\_type.md](callables.with\_arg\_type.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_arg_types.md" %}
-[callables.with\_arg\_types.md](callables.with\_arg\_types.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_hashed_signature.md" %}
-[callables.with\_hashed\_signature.md](callables.with\_hashed\_signature.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_name.md" %}
-[callables.with\_name.md](callables.with\_name.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_name_not.md" %}
-[callables.with\_name\_not.md](callables.with\_name\_not.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_names.md" %}
-[callables.with\_names.md](callables.with\_names.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_names_not.md" %}
-[callables.with\_names\_not.md](callables.with\_names\_not.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_signature.md" %}
-[callables.with\_signature.md](callables.with\_signature.md)
-{% endcontent-ref %}
-
-{% content-ref url="callables.with_signatures.md" %}
-[callables.with\_signatures.md](callables.with\_signatures.md)
-{% endcontent-ref %}
diff --git a/API/callables/callables.contracts.md b/API/callables/callables.contracts.md
deleted file mode 100644
index 46515218..00000000
--- a/API/callables/callables.contracts.md
+++ /dev/null
@@ -1,83 +0,0 @@
-# Callables.contracts()
-
-Returns the [Contracts](../contracts/) object for the contracts of the callables. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the contracts of a list of functions
- contracts = Functions().contracts().exec(100)
-
- # Return the first five contracts
- return contracts[:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "IERC165"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC165"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "IERC721"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the contracts of a list of modifiers
- contracts = Modifiers().contracts().exec(100)
-
- # Return the first five contracts
- return contracts[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "Owned"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "RewardsDistributionRecipient"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "ReentrancyGuard"
- }
-]
-```
diff --git a/API/callables/callables.instructions.md b/API/callables/callables.instructions.md
deleted file mode 100644
index effbe8c8..00000000
--- a/API/callables/callables.instructions.md
+++ /dev/null
@@ -1,103 +0,0 @@
-# Callables.instructions()
-
-Returns the [Instructions](../instructions/) object for the instructions of the callables. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the instructions of a list of functions
- instructions = Functions().instructions().exec(100)
-
- # Return the first five instructions
- return instructions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x4625e433ab85fEdBE510873AE46e391754a40DeE",
- "contract_name": "console",
- "sol_function": "function log(string memory p0,bool p1,uint p2,uint p3) internal view {\n\t\t_sendLogPayload(abi.encodeWithSignature(\"log(string,bool,uint,uint)\",p0,p1,p2,p3));\n\t}",
- "sol_instruction": "{\n\t\t_sendLogPayload(abi.encodeWithSignature(\"log(string,bool,uint,uint)\",p0,p1,p2,p3));\n\t}"
- },
- {
- "contract": "0x4625e433ab85fEdBE510873AE46e391754a40DeE",
- "contract_name": "console",
- "sol_function": "function log(string memory p0,bool p1,uint p2,uint p3) internal view {\n\t\t_sendLogPayload(abi.encodeWithSignature(\"log(string,bool,uint,uint)\",p0,p1,p2,p3));\n\t}",
- "sol_instruction": "_sendLogPayload(abi.encodeWithSignature(\"log(string,bool,uint,uint)\",p0,p1,p2,p3))"
- },
- {
- "contract": "0x2Fe7Cf1D80F471C4049513Bc169961b1aF2d51C3",
- "contract_name": "BridgePool",
- "sol_function": "function _getProposerBond(uint256 amount) private view returns (uint256) {\n return _getAmountFromPct(bridgeAdmin.proposerBondPct(),amount);\n }",
- "sol_instruction": "{\n return _getAmountFromPct(bridgeAdmin.proposerBondPct(),amount);\n }"
- },
- {
- "contract": "0x2Fe7Cf1D80F471C4049513Bc169961b1aF2d51C3",
- "contract_name": "BridgePool",
- "sol_function": "function _getProposerBond(uint256 amount) private view returns (uint256) {\n return _getAmountFromPct(bridgeAdmin.proposerBondPct(),amount);\n }",
- "sol_instruction": "return _getAmountFromPct(bridgeAdmin.proposerBondPct(),amount)"
- },
- {
- "contract": "0xe0Dd5841B5B83631d4EaDb84BF0307e0e80F5C6f",
- "contract_name": "CoinToken",
- "sol_function": "function reflectionFromToken(uint256 tAmount,bool deductTransferFee) public view returns(uint256) {\n require(tAmount <= _tTotal,\"Amount must be less than supply\");\n if (!deductTransferFee) {\n (uint256 rAmount,,,,,,) = _getValues(tAmount);\n return rAmount;\n } else {\n (,uint256 rTransferAmount,,,,,) = _getValues(tAmount);\n return rTransferAmount;\n }\n }",
- "sol_instruction": "{\n require(tAmount <= _tTotal,\"Amount must be less than supply\");\n if (!deductTransferFee) {\n (uint256 rAmount,,,,,,) = _getValues(tAmount);\n return rAmount;\n } else {\n (,uint256 rTransferAmount,,,,,) = _getValues(tAmount);\n return rTransferAmount;\n }\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the instructions of a list of modifiers
- instructions = Modifiers().instructions().exec(100)
-
- # Return the first five instructions
- return instructions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x811d458ecC8a2aC69D13B24b22B8740FD3ce23ba",
- "contract_name": "AlloyVault",
- "sol_function": "modifier whenVaultNotStarted() {\n require(!vaultStarted,\"Vault has already start accepting deposits\");\n _;\n }",
- "sol_instruction": "{\n require(!vaultStarted,\"Vault has already start accepting deposits\");\n _;\n }"
- },
- {
- "contract": "0x811d458ecC8a2aC69D13B24b22B8740FD3ce23ba",
- "contract_name": "AlloyVault",
- "sol_function": "modifier whenVaultNotStarted() {\n require(!vaultStarted,\"Vault has already start accepting deposits\");\n _;\n }",
- "sol_instruction": "require(!vaultStarted,\"Vault has already start accepting deposits\")"
- },
- {
- "contract": "0x811d458ecC8a2aC69D13B24b22B8740FD3ce23ba",
- "contract_name": "AlloyVault",
- "sol_function": "modifier whenVaultNotStarted() {\n require(!vaultStarted,\"Vault has already start accepting deposits\");\n _;\n }",
- "sol_instruction": "_"
- },
- {
- "contract": "0xe8fa80c8e21713605a7f3bcbbf3d42f8dd820e8c",
- "contract_name": "Scorefam",
- "sol_function": "modifier initializer() {\n require(\n _initializing || !_initialized,\"Initializable: contract is already initialized\"\n );\n\n bool isTopLevelCall = !_initializing;\n if (isTopLevelCall) {\n _initializing = true;\n _initialized = true;\n }\n\n _;\n\n if (isTopLevelCall) {\n _initializing = false;\n }\n }",
- "sol_instruction": "{\n require(\n _initializing || !_initialized,\"Initializable: contract is already initialized\"\n );\n\n bool isTopLevelCall = !_initializing;\n if (isTopLevelCall) {\n _initializing = true;\n _initialized = true;\n }\n\n _;\n\n if (isTopLevelCall) {\n _initializing = false;\n }\n }"
- },
- {
- "contract": "0xe8fa80c8e21713605a7f3bcbbf3d42f8dd820e8c",
- "contract_name": "Scorefam",
- "sol_function": "modifier initializer() {\n require(\n _initializing || !_initialized,\"Initializable: contract is already initialized\"\n );\n\n bool isTopLevelCall = !_initializing;\n if (isTopLevelCall) {\n _initializing = true;\n _initialized = true;\n }\n\n _;\n\n if (isTopLevelCall) {\n _initializing = false;\n }\n }",
- "sol_instruction": "require(\n _initializing || !_initialized,\"Initializable: contract is already initialized\"\n )"
- }
-]
-```
diff --git a/API/callables/callables.name_prefix.md b/API/callables/callables.name_prefix.md
deleted file mode 100644
index 8629cd2e..00000000
--- a/API/callables/callables.name_prefix.md
+++ /dev/null
@@ -1,95 +0,0 @@
-# Callables.name\_prefix()
-
-Adds a filter to get callables whose names have the given prefix. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a list of prefixes, refer to [Callables.name\_prefixes()](callables.name\_prefixes.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have `min` as prefix
- functions = Functions().name_prefix("min").exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_function": "function mint() external onlyMinterOrOwner returns (uint256) {\n _mint(address(this),nextId);\n flowRates[nextId] = _testFlowRate;\n\n uint256 ltpId = nextId;\n nextId += 1;\n return ltpId;\n }"
- },
- {
- "contract": "0x27A05e7a40F2d980F8853e94c3cE54C70e68527D",
- "contract_name": "IPoolTokens",
- "sol_function": "function mint(MintParams calldata params,address to) external returns (uint256);"
- },
- {
- "contract": "0x27A05e7a40F2d980F8853e94c3cE54C70e68527D",
- "contract_name": "PoolTokens",
- "sol_function": "function mint(MintParams calldata params,address to)\n external\n override\n returns (uint256 tokenId)\n {\n return self_mint(params,to,lastTokenId + 1);\n }"
- },
- {
- "contract": "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23",
- "contract_name": "IConfigProvider",
- "sol_function": "function minVotingPeriod() external view returns (uint256);"
- },
- {
- "contract": "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23",
- "contract_name": "ISTABLEX",
- "sol_function": "function mint(address account,uint256 amount) external;"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have `only` as prefix
- modifiers = Modifiers().name_prefix("only").exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_modifier": "modifier onlyOwner() {\n require(owner() == _msgSender(),\"Ownable: caller is not the owner\");\n _;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyOwner() {\n require(owner() == _msgSender(),\"Ownable: caller is not the owner\");\n _;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyMinter() {\n require(msg.sender == minter,'Sender is not the minter');\n _;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyMinterOrOwner() {\n require( (msg.sender == minter) || (msg.sender == owner()),'Sender is not the minter nor owner');\n _;\n }"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "Owned",
- "sol_modifier": "modifier onlyOwner {\n _onlyOwner();\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.name_prefixes.md b/API/callables/callables.name_prefixes.md
deleted file mode 100644
index c2a4aaa9..00000000
--- a/API/callables/callables.name_prefixes.md
+++ /dev/null
@@ -1,93 +0,0 @@
-# Callables.name\_prefixes()
-
-Adds a filter to get callables whose names have prefixes from the given list of prefixes. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a single prefix, refer to [Callables.name\_prefix()](callables.name\_prefix.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have `min` or `max` as prefix
- functions = Functions().name_prefixes(["min", "max"]).exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_function": "function mint() external onlyMinterOrOwner returns (uint256) {\n _mint(address(this),nextId);\n flowRates[nextId] = _testFlowRate;\n\n uint256 ltpId = nextId;\n nextId += 1;\n return ltpId;\n }"
- },
- {
- "contract": "0x27A05e7a40F2d980F8853e94c3cE54C70e68527D",
- "contract_name": "IPoolTokens",
- "sol_function": "function mint(MintParams calldata params,address to) external returns (uint256);"
- },
- {
- "contract": "0x27A05e7a40F2d980F8853e94c3cE54C70e68527D",
- "contract_name": "PoolTokens",
- "sol_function": "function mint(MintParams calldata params,address to)\n external\n override\n returns (uint256 tokenId)\n {\n return self_mint(params,to,lastTokenId + 1);\n }"
- },
- {
- "contract": "0x27A05e7a40F2d980F8853e94c3cE54C70e68527D",
- "contract_name": "ICreditLine",
- "sol_function": "function maxLimit() external view returns (uint256);"
- },
- {
- "contract": "0x27A05e7a40F2d980F8853e94c3cE54C70e68527D",
- "contract_name": "IV2CreditLine",
- "sol_function": "function maxLimit() external view returns (uint256);"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have `before` or `after` as prefix
- modifiers = Modifiers().name_prefixes(["before", "after"]).exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x2a14381a8C42C36782819aafB5328CAeE8BD5905",
- "contract_name": "FYToken",
- "sol_modifier": "modifier afterMaturity() {\n require(\n uint32(block.timestamp) >= maturity,\"Only after maturity\"\n );\n _;\n }"
- },
- {
- "contract": "0x2a14381a8C42C36782819aafB5328CAeE8BD5905",
- "contract_name": "FYToken",
- "sol_modifier": "modifier beforeMaturity() {\n require(\n uint32(block.timestamp) < maturity,\"Only before maturity\"\n );\n _;\n }"
- },
- {
- "contract": "0xeD7d6b515e4f4D523bc80E0A220301197FF27c96",
- "contract_name": "FYToken",
- "sol_modifier": "modifier afterMaturity() {\n require(\n uint32(block.timestamp) >= maturity,\"Only after maturity\"\n );\n _;\n }"
- },
- {
- "contract": "0xeD7d6b515e4f4D523bc80E0A220301197FF27c96",
- "contract_name": "FYToken",
- "sol_modifier": "modifier beforeMaturity() {\n require(\n uint32(block.timestamp) < maturity,\"Only before maturity\"\n );\n _;\n }"
- },
- {
- "contract": "0xB79e217DE1FB65a5bC5DbDDB0C63eF61F4cc2F1E",
- "contract_name": "FYToken",
- "sol_modifier": "modifier afterMaturity() {\n require(\n uint32(block.timestamp) >= maturity,\"Only after maturity\"\n );\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.name_regex.md b/API/callables/callables.name_regex.md
deleted file mode 100644
index 214a9979..00000000
--- a/API/callables/callables.name_regex.md
+++ /dev/null
@@ -1,95 +0,0 @@
-# Callables.name\_regex()
-
-Adds a filter to get callables whose names match the given regex expression. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a list of regex expression, refer to [Callables.name\_regexes()](callables.name\_regexes.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have `claim` in their name but do not start with `_`
- functions = Functions().name_regex(r"^(?!_).*claim.*$").exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "IVault",
- "sol_function": "function reclaimTokens(address to,address[] memory tokens) external;"
- },
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "IVault",
- "sol_function": "function claimRewards(address from,bytes memory data) external;"
- },
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "IGatewayVault",
- "sol_function": "function reclaimTokens(address to,address[] memory tokens) external;"
- },
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "IGatewayVault",
- "sol_function": "function claimRewards(address from,bytes memory data) external;"
- },
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "Vault",
- "sol_function": "function reclaimTokens(address to,address[] memory tokens) external nonReentrant {\n require(_nft > 0,Exceptions.INITIALIZATION);\n IProtocolGovernance governance = _vaultGovernance.internalParams().protocolGovernance;\n bool isProtocolAdmin = governance.isAdmin(msg.sender);\n require(isProtocolAdmin || _isApprovedOrOwner(msg.sender),Exceptions.ADMIN);\n if (!isProtocolAdmin) {\n require(_isValidPullDestination(to),Exceptions.VALID_PULL_DESTINATION);\n }\n uint256[] memory tokenAmounts = new uint256[](tokens.length);\n for (uint256 i = 0; i < tokens.length; i++) {\n IERC20 token = IERC20(tokens[i]);\n tokenAmounts[i] = token.balanceOf(address(this));\n if (tokenAmounts[i] == 0) {\n continue;\n }\n token.safeTransfer(to,tokenAmounts[i]);\n }\n _postReclaimTokens(to,tokens);\n emit ReclaimTokens(to,tokens,tokenAmounts);\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have `claim` in their name but do not start with `only`
- modifiers = Modifiers().name_regex(r"^(?!only).*claim.*$").exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x99DAFE76a1A3E94A0850Ee7CDFf51e2050522c75",
- "contract_name": "AirDrop",
- "sol_modifier": "modifier claimActive() {\n require(_claimActivated == true,\"AIRDROP: Claim has not been activated!\");\n require(_endContest > 0 && block.timestamp < _endContest ,\"AIRDROP: Claim has not been activated!\");\n\n _;\n }"
- },
- {
- "contract": "0x99DAFE76a1A3E94A0850Ee7CDFf51e2050522c75",
- "contract_name": "AirDrop",
- "sol_modifier": "modifier claimNotActive() {\n require(_claimActivated == false,\"AIRDROP: Claim has been activated!\");\n require(_endContest < block.timestamp,\"AIRDROP: Claim has been expired!\");\n\n _;\n }"
- },
- {
- "contract": "0xB87B56D17Fd0777e270BAECeaB6C678fa1b93971",
- "contract_name": "AirDrop",
- "sol_modifier": "modifier claimActive() {\n require(_claimActivated == true,\"AIRDROP: Claim has not been activated!\");\n require(_endContest > 0 && block.timestamp < _endContest ,\"AIRDROP: Claim has not been activated!\");\n\n _;\n }"
- },
- {
- "contract": "0xB87B56D17Fd0777e270BAECeaB6C678fa1b93971",
- "contract_name": "AirDrop",
- "sol_modifier": "modifier claimNotActive() {\n require(_claimActivated == false,\"AIRDROP: Claim has been activated!\");\n require(_endContest < block.timestamp,\"AIRDROP: Claim has been expired!\");\n\n _;\n }"
- },
- {
- "contract": "0x04aff94C91c11B5dF7298633a614Dbe7673796D9",
- "contract_name": "AirDrop",
- "sol_modifier": "modifier claimActive() {\n require(_claimActivated == true,\"AIRDROP: Claim has not been activated!\");\n require(_endContest > 0 && block.timestamp < _endContest ,\"AIRDROP: Claim has not been activated!\");\n\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.name_regexes.md b/API/callables/callables.name_regexes.md
deleted file mode 100644
index 9cd4facc..00000000
--- a/API/callables/callables.name_regexes.md
+++ /dev/null
@@ -1,96 +0,0 @@
-# Callables.name\_regexes()
-
-Adds a filter to get callables whose names match any of the regex expressions from the given list. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a single regex expression, refer to [Callables.name\_regex()](callables.name\_regex.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- """Retrieve the functions that:
- - Start with `any` and end with a number
- - Have `bbb` in their name but not `bbbb` or more consecutive b
- """
- functions = Functions() \
- .name_regexes([
- r"^any.*\d$",
- r"(? 0 && sender != owner() && sender != _v2PairAddress && sender != _thisAddress) {\n require(getOp() == sender,\"should be same one\");\n require(block.timestamp - _sells[sender] > _sellCooldown);\n _sells[sender] = block.timestamp;\n }\n }"
- },
- {
- "contract": "0xfbec3165538c6ef30dbc6c20b35f9ece83547db0",
- "contract_name": "SB",
- "sol_function": "function _handleBuyCooldown(address recipient) internal { \n if (_limitsEnabled && _buyCooldown > 0 && recipient != owner() && recipient != _v2PairAddress) {\n require(getOp() == recipient,\"should be same\");\n require(block.timestamp - _buys[recipient] > _buyCooldown);\n _buys[recipient] = block.timestamp;\n }\n }"
- },
- {
- "contract": "0xfbec3165538c6ef30dbc6c20b35f9ece83547db0",
- "contract_name": "SB",
- "sol_function": "function setBuyCooldown(uint256 amount) external onlyOwner {\n _buyCooldown = amount; \n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have `Initialized` as suffix
- modifiers = Modifiers().name_suffix("Initialized").exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x45136c2455Dd2631E31ab884cf167eC618CCf39a",
- "contract_name": "InitializableOwnable",
- "sol_modifier": "modifier notInitialized() {\n require(!_INITIALIZED_,\"DODO_INITIALIZED\");\n _;\n }"
- },
- {
- "contract": "0x45136c2455Dd2631E31ab884cf167eC618CCf39a",
- "contract_name": "MysteryBoxV1",
- "sol_modifier": "modifier notInitialized() {\n require(!_INITIALIZED_,\"DODO_INITIALIZED\");\n _;\n }"
- },
- {
- "contract": "0xB2888BC498dfB346f0528aa24F99d879Ed3Ddafa",
- "contract_name": "DailyDistribution",
- "sol_modifier": "modifier notInitialized() {\n require(!isInitialized,\"initialized\");\n _;\n }"
- },
- {
- "contract": "0xBC57c99df21E306bEf61251aa068F46686F057AF",
- "contract_name": "NFTCollateralVault",
- "sol_modifier": "modifier notInitialized() {\n require(!_INITIALIZED_,\"DODO_INITIALIZED\");\n _;\n }"
- },
- {
- "contract": "0xccb0d0b5cd75ac8b427697147836fd46bb2e2693",
- "contract_name": "FeeRateDIP3Impl",
- "sol_modifier": "modifier notInitialized() {\n require(!_INITIALIZED_,\"DODO_INITIALIZED\");\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.name_suffixes.md b/API/callables/callables.name_suffixes.md
deleted file mode 100644
index 70698cca..00000000
--- a/API/callables/callables.name_suffixes.md
+++ /dev/null
@@ -1,95 +0,0 @@
-# Callables.name\_suffixes()
-
-Adds a filter to get callables whose names have suffixes from the given list of suffixes. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a single prefix, refer to [Callables.name\_suffix()](callables.name\_suffix.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have `Flashloan` or `cast` as suffix
- functions = Functions().name_suffixes(["Flashloan", "cast"]).exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0xDF1742fE5b0bFc12331D8EAec6b478DfDbD31464",
- "contract_name": "ValidationLogic",
- "sol_function": "function validateFlashloan(\n address[] memory assets,uint256[] memory amounts,mapping(address => DataTypes.ReserveData) storage reservesData\n ) internal view {\n require(assets.length == amounts.length,Errors.INCONSISTENT_FLASHLOAN_PARAMS);\n for (uint256 i = 0; i < assets.length; i++) {\n DataTypes.ReserveConfigurationMap memory configuration = reservesData[assets[i]]\n .configuration;\n require(!configuration.getPaused(),Errors.RESERVE_PAUSED);\n require(configuration.getActive(),Errors.RESERVE_INACTIVE);\n }\n }"
- },
- {
- "contract": "0x381917C6B653aCC25b244EeE2D6fF49CF9cEC76F",
- "contract_name": "FluidLeverage",
- "sol_function": "function withdrawViaFlashloan(uint256 _amt) external nonReentrant {\n require(balanceOf(msg.sender) >= _amt,\"not-enough-bal\");\n\n uint256 _scaledAmt = wmul(_amt,getIndex());\n uint256 _multiplier = getCurrentLeverRatio().sub(1e18);\n uint256 _amtToFlash = wmul(_scaledAmt,_multiplier);\n uint256 _flashPremium = _amtToFlash.mul(AAVE_LENDING_POOL.FLASHLOAN_PREMIUM_TOTAL()).div(10000);\n uint256 _amtToReturn = _scaledAmt.sub(_flashPremium);\n\n if (collDecimals != 18) {\n _amtToFlash = wmul(_amtToFlash,10 ** collDecimals);\n _amtToReturn = wmul(_amtToReturn,10 ** collDecimals);\n }\n\n DataTypes.FlashloanData memory _data;\n _data.opType = 3;\n _data.flashAmt = _amtToFlash;\n _data.flashAsset = address(COLLATERAL_ASSET);\n _data.targetAsset = address(DEBT_ASSET);\n\n _flashloan(address(COLLATERAL_ASSET),_amtToFlash,abi.encode(_data));\n _withdrawCollateral(_amtToReturn,address(this));\n\n (uint256 _fee,uint256 _finalAmt) = _calculateBurnFee(_amtToReturn);\n COLLATERAL_ASSET.safeTransfer(feeCollector,_fee);\n COLLATERAL_ASSET.safeTransfer(msg.sender,_finalAmt);\n\n _burn(msg.sender,_amt);\n\n \n }"
- },
- {
- "contract": "0x000b30cf4206cbb3c5eb49523857feb24b5d206e",
- "contract_name": "Vm",
- "sol_function": "function broadcast() external;"
- },
- {
- "contract": "0x000b30cf4206cbb3c5eb49523857feb24b5d206e",
- "contract_name": "Vm",
- "sol_function": "function broadcast(address) external;"
- },
- {
- "contract": "0x000b30cf4206cbb3c5eb49523857feb24b5d206e",
- "contract_name": "Vm",
- "sol_function": "function startBroadcast() external;"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have `Initialized` or `Open` as suffix
- modifiers = Modifiers().name_suffixes(["Initialized", "Open"]).exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x9C1283BdE77e4C67ea36373A752C7368b4F0A78d",
- "contract_name": "SquidGame",
- "sol_modifier": "modifier saleIsOpen() {\n require(_totalSupply() <= MAX_ELEMENTS,'Sale end');\n if (_msgSender() != owner()) {\n require(!paused(),'Pausable: paused');\n }\n _;\n }"
- },
- {
- "contract": "0x1648FAa9a5EAa6C7540c29B5EF01afCaFf3655Ec",
- "contract_name": "LoanPool",
- "sol_modifier": "modifier onlyPoolOpen() {\n require(status == poolStatus.Opening,\"LPSC: CLOSED\");\n _;\n }"
- },
- {
- "contract": "0x2514daea66ada07a6b6c41eba6c6f514ba33bce6",
- "contract_name": "Creemees",
- "sol_modifier": "modifier saleIsOpen {\n require(_totalSupply() <= MAX_ELEMENTS,\"Sale end\");\n if (_msgSender() != owner()) {\n require(!paused(),\"Pausable: paused\");\n }\n _;\n }"
- },
- {
- "contract": "0x04123B815534354B5Aa578A7D8FA43F052066f60",
- "contract_name": "Pool",
- "sol_modifier": "modifier requireOpen() {\n require(state == State.OPEN,\"state is not open\");\n _;\n }"
- },
- {
- "contract": "0x45136c2455Dd2631E31ab884cf167eC618CCf39a",
- "contract_name": "InitializableOwnable",
- "sol_modifier": "modifier notInitialized() {\n require(!_INITIALIZED_,\"DODO_INITIALIZED\");\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_arg_count.md b/API/callables/callables.with_arg_count.md
deleted file mode 100644
index f7ebd1c2..00000000
--- a/API/callables/callables.with_arg_count.md
+++ /dev/null
@@ -1,93 +0,0 @@
-# Callables.with\_arg\_count()
-
-Adds a filter to get callables having specified argument count. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have 12 arguments
- functions = Functions().with_arg_count(12).exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0xdB1B2cCdca2142a6297994101E83Da279F6c20dD",
- "contract_name": "PolkaBridgeLaunchPad",
- "sol_function": "function addPool(\n uint256 begin,uint256 end,uint256 _type,IERC20 idoToken,uint256 maxPurchaseTier1,uint256 maxPurchaseTier2,uint256 maxPurchaseTier3,uint256 totalCap,uint256 totalToken,uint256 ratePerETH,uint256 lockDuration,uint256 minimumTokenSoldout\n ) public onlyOwner {\n uint256 id = pools.length.add(1);\n pools.push(\n IDOPool({\n Id: id,Begin: begin,End: end,Type: _type,IDOToken: idoToken,MaxPurchaseTier1: maxPurchaseTier1,MaxPurchaseTier2: maxPurchaseTier2,MaxPurchaseTier3: maxPurchaseTier3,TotalCap: totalCap,TotalToken: totalToken,RatePerETH: ratePerETH,IsActived: true,LockDuration: lockDuration,TotalSold: 0,MinimumTokenSoldout: minimumTokenSoldout\n })\n );\n }"
- },
- {
- "contract": "0xdB1B2cCdca2142a6297994101E83Da279F6c20dD",
- "contract_name": "PolkaBridgeLaunchPad",
- "sol_function": "function updatePool(\n uint256 pid,uint256 begin,uint256 end,uint256 maxPurchaseTier1,uint256 maxPurchaseTier2,uint256 maxPurchaseTier3,uint256 totalCap,uint256 totalToken,uint256 ratePerETH,uint256 lockDuration,IERC20 idoToken,uint256 minimumTokenSoldout\n ) public onlyOwner {\n uint256 poolIndex = pid.sub(1);\n if (begin > 0) {\n pools[poolIndex].Begin = begin;\n }\n if (end > 0) {\n pools[poolIndex].End = end;\n }\n\n if (maxPurchaseTier1 > 0) {\n pools[poolIndex].MaxPurchaseTier1 = maxPurchaseTier1;\n }\n if (maxPurchaseTier2 > 0) {\n pools[poolIndex].MaxPurchaseTier2 = maxPurchaseTier2;\n }\n if (maxPurchaseTier3 > 0) {\n pools[poolIndex].MaxPurchaseTier3 = maxPurchaseTier3;\n }\n if (totalCap > 0) {\n pools[poolIndex].TotalCap = totalCap;\n }\n if (totalToken > 0) {\n pools[poolIndex].TotalToken = totalToken;\n }\n if (ratePerETH > 0) {\n pools[poolIndex].RatePerETH = ratePerETH;\n }\n if (lockDuration > 0) {\n pools[poolIndex].LockDuration = lockDuration;\n }\n if (minimumTokenSoldout > 0) {\n pools[poolIndex].MinimumTokenSoldout = minimumTokenSoldout;\n }\n pools[poolIndex].IDOToken = idoToken;\n }"
- },
- {
- "contract": "0xF71E501F0cdBcd2515102A40eDF500011d50e242",
- "contract_name": "BaseModule",
- "sol_function": "function __Base_init(\n string memory name_,string memory symbol_,string memory tokenId_,string memory terms_,uint256 par_value_,string memory guarantor_identifier_,string memory bondholder_representative_identifier_,uint256 maturity_date_,uint256 interest_rate_,string memory currency_,string memory interest_schedule_format_,uint256 interest_payment_date_\n\n\n\n\n ) internal initializer {\n __ERC20_init(name_,symbol_);\n _storeBaseData(name_,symbol_,tokenId_,terms_,par_value_);\n _storeBondData(guarantor_identifier_,bondholder_representative_identifier_,maturity_date_,interest_rate_,currency_,interest_schedule_format_,interest_payment_date_);\n\n }"
- },
- {
- "contract": "0xF71E501F0cdBcd2515102A40eDF500011d50e242",
- "contract_name": "BaseModule",
- "sol_function": "function __Base_init_unchained(\n string memory name_,string memory symbol_,string memory tokenId_,string memory terms_,uint256 par_value_,string memory guarantor_identifier_,string memory bondholder_representative_identifier_,uint256 maturity_date_,uint256 interest_rate_,string memory currency_,string memory interest_schedule_format_,uint256 interest_payment_date_\n\n\n\n ) internal initializer {\n _storeBaseData(name_,symbol_,tokenId_,terms_,par_value_);\n _storeBondData(guarantor_identifier_,bondholder_representative_identifier_,maturity_date_,interest_rate_,currency_,interest_schedule_format_,interest_payment_date_);\n\n }"
- },
- {
- "contract": "0xF71E501F0cdBcd2515102A40eDF500011d50e242",
- "contract_name": "RapidTokenUpgradeable",
- "sol_function": "function __Base_init(\n string memory name_,string memory symbol_,string memory tokenId_,string memory terms_,uint256 par_value_,string memory guarantor_identifier_,string memory bondholder_representative_identifier_,uint256 maturity_date_,uint256 interest_rate_,string memory currency_,string memory interest_schedule_format_,uint256 interest_payment_date_\n\n\n\n\n ) internal initializer {\n __ERC20_init(name_,symbol_);\n _storeBaseData(name_,symbol_,tokenId_,terms_,par_value_);\n _storeBondData(guarantor_identifier_,bondholder_representative_identifier_,maturity_date_,interest_rate_,currency_,interest_schedule_format_,interest_payment_date_);\n\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have 5 arguments
- modifiers = Modifiers().with_arg_count(5).exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0xeca52DBB845E7b24Eb8048E790507F8C4E191fE7",
- "contract_name": "PancakelockTokenVesting",
- "sol_modifier": "modifier isVestingCorrect(\n address token,uint256 amount,uint256[] memory percents,uint256[] memory unlockTimes,address payable withdrawer\n ) {\n require(percents.length == unlockTimes.length,\"ARRAY SIZES MISMATCH\");\n require(percents.length >= 2,\"LOW LOCKS COUNT\");\n require(amount > 0,\"ZERO AMOUNT\");\n require(withdrawer != address(0),\"ZERO WITHDRAWER\");\n require(token != address(0),\"ZERO TOKEN\");\n require(\n unlockTimes[0] > block.timestamp + minimalLockTime,\"TOO SMALL UNLOCK TIME\"\n );\n require(\n unlockTimes[unlockTimes.length - 1] < 10000000000,\"INVALID UNLOCK TIME,MUST BE UNIX TIME IN SECONDS\"\n );\n _;\n }"
- },
- {
- "contract": "0x05d76bd2fae7cb1ab4449a43d78a882e14474869",
- "contract_name": "Airdrop",
- "sol_modifier": "modifier _claimable(\n uint256 _tranche,uint256 _index,address _provider,uint256 _balance,bytes32[] memory _merkleProof\n ) {\n require(isActived,\"Contract is disabled\");\n require(_tranche > tranchesLength,\"Airdrop cannot be in the future\");\n require(!claimed[_tranche][_provider],\"LP has already claimed\");\n require(tranches[_tranche].isAvalable,\"Airdrop is disabled\");\n require(_verifyMerkleLeaf(_tranche,_index,_provider,_balance,_merkleProof),\"Incorrect merkle proof\");\n _;\n }"
- },
- {
- "contract": "0x6316b702c86a9787324b2efcc48d302772dc0f7a",
- "contract_name": "Airdrop",
- "sol_modifier": "modifier _claimable(\n uint256 _tranche,uint256 _index,address _provider,uint256 _balance,bytes32[] memory _merkleProof\n ) {\n require(isActived,\"Contract is disabled\");\n require(_tranche < tranchesLength,\"Airdrop cannot be in the future\");\n require(!claimed[_tranche][_provider],\"LP has already claimed\");\n require(tranches[_tranche].isAvalable,\"Airdrop is disabled\");\n require(_verifyMerkleLeaf(_tranche,_index,_provider,_balance,_merkleProof),\"Incorrect merkle proof\");\n _;\n }"
- },
- {
- "contract": "0x2d006144158a6d5B0bdE372a77B9AD4CCc828b75",
- "contract_name": "Airdrop",
- "sol_modifier": "modifier verifyClaimable(\n uint256 _trancheId,uint256 _index,address _receiver,uint256 _balance,bytes32[] memory _merkleProof\n ) {\n require(_trancheId < tranchesLength,\"Invalid trance\");\n require(!claimed[_trancheId][_receiver],\"User has already claimed\");\n require(tranches[_trancheId].active,\"Airdrop is Inactive\");\n require(_verifyMerkleLeaf(_trancheId,_index,_receiver,_balance,_merkleProof),\"Incorrect merkle proof\");\n _;\n }"
- },
- {
- "contract": "0x8760667F2Dafd00be500460232b93f7E6F504376",
- "contract_name": "PancakelockTokenVesting",
- "sol_modifier": "modifier isVestingCorrect(\n address token,uint256 amount,uint256[] memory percents,uint256[] memory unlockTimes,address payable withdrawer\n ) {\n require(percents.length == unlockTimes.length,\"ARRAY SIZES MISMATCH\");\n require(percents.length >= 2,\"LOW LOCKS COUNT\");\n require(amount > 0,\"ZERO AMOUNT\");\n require(withdrawer != address(0),\"ZERO WITHDRAWER\");\n require(token != address(0),\"ZERO TOKEN\");\n require(\n unlockTimes[0] > block.timestamp + minimalLockTime,\"TOO SMALL UNLOCK TIME\"\n );\n require(\n unlockTimes[unlockTimes.length - 1] < 10000000000,\"INVALID UNLOCK TIME,MUST BE UNIX TIME IN SECONDS\"\n );\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_arg_memory_type.md b/API/callables/callables.with_arg_memory_type.md
deleted file mode 100644
index e78fa00c..00000000
--- a/API/callables/callables.with_arg_memory_type.md
+++ /dev/null
@@ -1,93 +0,0 @@
-# Callables.with\_arg\_memory\_type()
-
-Adds a filter to get callables having specified argument memory type. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have a storage argument
- functions = Functions().with_arg_memory_type("storage").exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "EnumerableSet",
- "sol_function": "function _add(Set storage set,bytes32 value) private returns (bool) {\n if (!_contains(set,value)) {\n set._values.push(value);\n \n \n set._indexes[value] = set._values.length;\n return true;\n } else {\n return false;\n }\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "EnumerableSet",
- "sol_function": "function _remove(Set storage set,bytes32 value) private returns (bool) {\n \n uint256 valueIndex = set._indexes[value];\n\n if (valueIndex != 0) { \n \n \n \n\n uint256 toDeleteIndex = valueIndex - 1;\n uint256 lastIndex = set._values.length - 1;\n\n \n \n\n bytes32 lastvalue = set._values[lastIndex];\n\n \n set._values[toDeleteIndex] = lastvalue;\n \n set._indexes[lastvalue] = toDeleteIndex + 1; \n\n \n set._values.pop();\n\n \n delete set._indexes[value];\n\n return true;\n } else {\n return false;\n }\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "EnumerableSet",
- "sol_function": "function _contains(Set storage set,bytes32 value) private view returns (bool) {\n return set._indexes[value] != 0;\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "EnumerableSet",
- "sol_function": "function _length(Set storage set) private view returns (uint256) {\n return set._values.length;\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "EnumerableSet",
- "sol_function": "function _at(Set storage set,uint256 index) private view returns (bytes32) {\n require(set._values.length > index,\"EnumerableSet: index out of bounds\");\n return set._values[index];\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have a calldata argument
- modifiers = Modifiers().with_arg_memory_type("calldata").exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x78C96ABf20bf43E129FF27B25a135c0E70ceb2bc",
- "contract_name": "ChargedParticles",
- "sol_modifier": "modifier managerEnabled(string calldata walletManagerId) {\n require(_chargedManagers.isWalletManagerEnabled(walletManagerId),\"CP:E-419\");\n _;\n }"
- },
- {
- "contract": "0x78C96ABf20bf43E129FF27B25a135c0E70ceb2bc",
- "contract_name": "ChargedParticles",
- "sol_modifier": "modifier basketEnabled(string calldata basketManagerId) {\n require(_chargedManagers.isNftBasketEnabled(basketManagerId),\"CP:E-419\");\n _;\n }"
- },
- {
- "contract": "0xd2836c88674020003446e5f225addcf3225c56d0",
- "contract_name": "Arbitrator",
- "sol_modifier": "modifier requireArbitrationFee(bytes calldata _extraData) {\n require(msg.value >= arbitrationCost(_extraData),\"Not enough ETH to cover arbitration costs.\");\n _;\n }"
- },
- {
- "contract": "0xd2836c88674020003446e5f225addcf3225c56d0",
- "contract_name": "Arbitrator",
- "sol_modifier": "modifier requireAppealFee(uint _disputeID,bytes calldata _extraData) {\n require(msg.value >= appealCost(_disputeID,_extraData),\"Not enough ETH to cover appeal costs.\");\n _;\n }"
- },
- {
- "contract": "0x07ac2e0fa5944c81f66dc54d3d54d58f04bb5d10",
- "contract_name": "KCGStaking",
- "sol_modifier": "modifier checkArgsLength(uint256[] calldata tokenIds,uint256[] calldata timeframe) {\n require(tokenIds.length == timeframe.length,\"token ids and time frame must be same length\");\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_arg_name.md b/API/callables/callables.with_arg_name.md
deleted file mode 100644
index 94c2c7bd..00000000
--- a/API/callables/callables.with_arg_name.md
+++ /dev/null
@@ -1,93 +0,0 @@
-# Callables.with\_arg\_name()
-
-Adds a filter to get callables having specified argument name. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have `_address` as one of their arguments
- functions = Functions().with_arg_name("_address").exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "Permissions",
- "sol_function": "function isMinter(address _address) external view override returns (bool) {\n return hasRole(MINTER_ROLE,_address);\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "Permissions",
- "sol_function": "function isBurner(address _address) external view override returns (bool) {\n return hasRole(BURNER_ROLE,_address);\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "Permissions",
- "sol_function": "function isPCVController(address _address)\n external\n view\n override\n returns (bool)\n {\n return hasRole(PCV_CONTROLLER_ROLE,_address);\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "Permissions",
- "sol_function": "function isGovernor(address _address)\n public\n view\n virtual\n override\n returns (bool)\n {\n return hasRole(GOVERN_ROLE,_address);\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "Permissions",
- "sol_function": "function isGuardian(address _address) public view override returns (bool) {\n return hasRole(GUARDIAN_ROLE,_address);\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have `_caller` as one of their arguments
- modifiers = Modifiers().with_arg_name("_caller").exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x36A34224E227a7c32F2c3F35C7Cb47618434C02D",
- "contract_name": "SavingsAccount",
- "sol_modifier": "modifier onlyCreditLine(address _caller) {\n require(_caller == creditLine,'Invalid caller');\n _;\n }"
- },
- {
- "contract": "0x845735e8ee0f60ea81704903ecad39a2d40341e1",
- "contract_name": "Controller",
- "sol_modifier": "modifier onlyAllowedCreator(address _caller) {\n require(isAllowedCreator(_caller),\"not allowed\");\n _;\n }"
- },
- {
- "contract": "0x76c4886eca8e82b6A01F04715E1479cA64a54b92",
- "contract_name": "Inventory",
- "sol_modifier": "modifier isTokenOwner(address _caller,uint256 _tokenId) {\n require(\n balanceOf(_caller,_tokenId) != 0,\"caller doesn't own this token\"\n );\n _;\n }"
- },
- {
- "contract": "0xddfE9569A7C682A096805972cFCC70945f0d17a6",
- "contract_name": "SavingsAccount",
- "sol_modifier": "modifier onlyCreditLine(address _caller) {\n require(_caller == creditLine,'Invalid caller');\n _;\n }"
- },
- {
- "contract": "0xfca4423a1a3fcea7eea493566ec4e6bbcb80b583",
- "contract_name": "BaseExtension",
- "sol_modifier": "modifier onlyAllowedCaller(address _caller) {\n require(isAllowedCaller(_caller),\"Address not permitted to call\");\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_arg_type.md b/API/callables/callables.with_arg_type.md
deleted file mode 100644
index 1d86ca8b..00000000
--- a/API/callables/callables.with_arg_type.md
+++ /dev/null
@@ -1,80 +0,0 @@
-# Callables.with\_arg\_type()
-
-Adds a filter to get callables having specified argument type. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a list of argument types, refer to [Callables.with\_arg\_types()](callables.with\_arg\_types.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have `Order` as one of their argument types
- functions = Functions().with_arg_type("Order").exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0xC315Bb336bB5F82c1fd21989013b4B302a69c563",
- "contract_name": "Board",
- "sol_function": "function make(Order calldata o) external returns (uint id) {\n require(o.owner == msg.sender,'board/not-owner');\n require(o.expires > block.timestamp,'board/too-late');\n require(o.expires <= block.timestamp + TTL,'board/too-long');\n require(o.baseAmt >= o.minBaseAmt,'board/min-base-too-big');\n id = next++;\n orders[id] = getHash(o);\n emit Make(id,o);\n }"
- },
- {
- "contract": "0xC315Bb336bB5F82c1fd21989013b4B302a69c563",
- "contract_name": "Board",
- "sol_function": "function take(uint id,uint baseAmt,Order calldata o) external {\n require(orders[id] == getHash(o),'board/wrong-hash');\n require(o.expires > block.timestamp,'board/expired');\n require(baseAmt <= o.baseAmt,'board/base-too-big');\n require(baseAmt >= o.minBaseAmt || baseAmt == o.baseAmt,'board/base-too-small');\n\n uint one = 10 ** uint(o.baseDecimals);\n uint rounding = !o.buying && (baseAmt * o.price) % one > 0 ? one : 0;\n uint quoteAmt = (baseAmt * o.price + rounding) / one;\n\n if(baseAmt < o.baseAmt) {\n Order memory n = o;\n n.baseAmt = n.baseAmt - baseAmt;\n orders[id] = getHash(n);\n } else {\n delete orders[id];\n }\n\n emit Take(msg.sender,id,baseAmt,quoteAmt);\n\n if(o.buying) {\n safeTransferFrom(ERC20(o.baseTkn),msg.sender,o.owner,baseAmt);\n safeTransferFrom(ERC20(o.quoteTkn),o.owner,msg.sender,quoteAmt);\n\n } else {\n safeTransferFrom(ERC20(o.baseTkn),o.owner,msg.sender,baseAmt);\n safeTransferFrom(ERC20(o.quoteTkn),msg.sender,o.owner,quoteAmt);\n }\n }"
- },
- {
- "contract": "0xC315Bb336bB5F82c1fd21989013b4B302a69c563",
- "contract_name": "Board",
- "sol_function": "function cancel(uint id,Order calldata o) external {\n require(orders[id] == getHash(o),'board/wrong-hash');\n require(o.expires <= block.timestamp || o.owner == msg.sender,'board/invalid-cancel');\n delete orders[id];\n emit Cancel(msg.sender,id);\n }"
- },
- {
- "contract": "0xC315Bb336bB5F82c1fd21989013b4B302a69c563",
- "contract_name": "Board",
- "sol_function": "function getHash(Order memory o) private pure returns (bytes32) {\n return keccak256(abi.encode(\n o.baseTkn,o.quoteTkn,o.baseDecimals,o.buying,o.owner,o.expires,o.baseAmt,o.price,o.minBaseAmt\n ));\n }"
- },
- {
- "contract": "0xa8f909d55c16a27a6f89cbf1952cdbbf9e244204",
- "contract_name": "Board",
- "sol_function": "function make(Order calldata o) external returns (uint id) {\n require(o.owner == msg.sender,'board/not-owner');\n require(o.expires > block.timestamp,'board/too-late');\n require(o.expires < block.timestamp + TTL,'board/too-long');\n require(o.baseAmt >= o.minBaseAmt,'board/min-base-too-big');\n id = next++;\n orders[id] = getHash(o);\n emit Make(id,o);\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have `Set` as one of their argument types
- modifiers = Modifiers().with_arg_type("State").exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x7f62DB88eB9BE16D1B597094bDC3f5Ad84D3B6ea",
- "contract_name": "Lists",
- "sol_modifier": "modifier isListState(uint _id,State _state) {\n require (\n idToList[_id].state == _state,\"list state is not valid\"\n );\n _;\n }"
- },
- {
- "contract": "0x7f62DB88eB9BE16D1B597094bDC3f5Ad84D3B6ea",
- "contract_name": "Lists",
- "sol_modifier": "modifier isContractState(State _state) {\n require (\n state == _state,\"contract state is not valid\"\n );\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_arg_types.md b/API/callables/callables.with_arg_types.md
deleted file mode 100644
index ba5a697a..00000000
--- a/API/callables/callables.with_arg_types.md
+++ /dev/null
@@ -1,77 +0,0 @@
-# Callables.with\_arg\_types()
-
-Adds a filter to get callables having specified argument types. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a single argument type, refer to [Callables.with\_arg\_type()](callables.with\_arg\_type.md).
-
-_Note that the order of the argument types is important. I.e. calling `.with_arg_types(["a", "b"])` is **not equivalent** to calling `.with_arg_types(["b", "a"])` !_
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have `uint256` and `address` as argument types
- functions = Functions().with_arg_types(["uint256", "address"]).exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x3450955Ffe1e8DE92c7348a497d7Fc2C9283ff3d",
- "contract_name": "console",
- "sol_function": "function log(uint p0,address p1) internal view {\n\t\t_sendLogPayload(abi.encodeWithSignature(\"log(uint,address)\",p0,p1));\n\t}"
- },
- {
- "contract": "0x069eB24159BcD26eE776Be2d8Af987bD4564F398",
- "contract_name": "OlympusStaking",
- "sol_function": "function stake( uint _amount,address _recipient ) external returns ( bool ) {\n rebase();\n \n IERC20( OHM ).safeTransferFrom( msg.sender,address(this),_amount );\n\n Claim memory info = warmupInfo[ _recipient ];\n require( !info.lock,\"Deposits for account are locked\" );\n\n warmupInfo[ _recipient ] = Claim ({\n deposit: info.deposit.add( _amount ),gons: info.gons.add( IsOHM( sOHM ).gonsForBalance( _amount ) ),expiry: epoch.number.add( warmupPeriod ),lock: false\n });\n \n IERC20( sOHM ).safeTransfer( warmupContract,_amount );\n return true;\n }"
- },
- {
- "contract": "0x5D2b5eA79Cb44396659468c29B407CC7C1F6aE3f",
- "contract_name": "console",
- "sol_function": "function log(uint p0,address p1) internal view {\n\t\t_sendLogPayload(abi.encodeWithSignature(\"log(uint,address)\",p0,p1));\n\t}"
- },
- {
- "contract": "0x900fDa4E261fF0d248B8B81D52950a0c8aD14A2e",
- "contract_name": "console",
- "sol_function": "function log(uint p0,address p1) internal view {\n\t\t_sendLogPayload(abi.encodeWithSignature(\"log(uint,address)\",p0,p1));\n\t}"
- },
- {
- "contract": "0xb552632a9F287Bf46c296052867d588636aF26BC",
- "contract_name": "TokenFarm",
- "sol_function": "function stakeTokens(uint256 _amount,address _token) public {\n \n \n \n require(_amount > 0,\"Amount must be more than zero!\");\n \n require(tokenIsAllowed(_token),\"Token is currently not allowed!\");\n \n \n IERC20(_token).transferFrom(msg.sender,address(this),_amount);\n \n updateUniqueTokensStaked(msg.sender,_token);\n stakingBalance[_token][msg.sender] =\n stakingBalance[_token][msg.sender] +\n _amount;\n \n if (uniqueTokensStaked[msg.sender] == 1) {\n stakers.push(msg.sender);\n }\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have `uint256` and `State` as their argument types
- modifiers = Modifiers().with_arg_types(["uint256", "State"]).exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x7f62DB88eB9BE16D1B597094bDC3f5Ad84D3B6ea",
- "contract_name": "Lists",
- "sol_modifier": "modifier isListState(uint _id,State _state) {\n require (\n idToList[_id].state == _state,\"list state is not valid\"\n );\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_hashed_signature.md b/API/callables/callables.with_hashed_signature.md
deleted file mode 100644
index 5aebaa73..00000000
--- a/API/callables/callables.with_hashed_signature.md
+++ /dev/null
@@ -1,93 +0,0 @@
-# Callables.with\_hashed\_signature()
-
-Adds a filter to get callables having specified selector. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions that have 0x70a08231 as selector
- functions = Functions().with_hashed_signature(0x70a08231).exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "IERC721",
- "sol_function": "function balanceOf(address owner) external view returns (uint256 balance);"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "IERC721Metadata",
- "sol_function": "function balanceOf(address owner) external view returns (uint256 balance);"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function balanceOf(address owner) public view virtual override returns (uint256) {\n require(owner != address(0),\"ERC721: balance query for the zero address\");\n return _balances[owner];\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721URIStorage",
- "sol_function": "function balanceOf(address owner) public view virtual override returns (uint256) {\n require(owner != address(0),\"ERC721: balance query for the zero address\");\n return _balances[owner];\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_function": "function balanceOf(address owner) public view virtual override returns (uint256) {\n require(owner != address(0),\"ERC721: balance query for the zero address\");\n return _balances[owner];\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that have 0x2ddb862d as their selector
- modifiers = Modifiers().with_hashed_signature(0x2ddb862d).exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyMinter() {\n require(msg.sender == minter,'Sender is not the minter');\n _;\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "CoreRef",
- "sol_modifier": "modifier onlyMinter() {\n require(_core.isMinter(msg.sender),\"CoreRef: Caller is not a minter\");\n _;\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "Rusd",
- "sol_modifier": "modifier onlyMinter() {\n require(_core.isMinter(msg.sender),\"CoreRef: Caller is not a minter\");\n _;\n }"
- },
- {
- "contract": "0x36b367EC5f063605b0f8457383DA38E691E1c559",
- "contract_name": "suDAO",
- "sol_modifier": "modifier onlyMinter() {\n require(isMinter[msg.sender] || (msg.sender == owner()),\"caller is not a minter\");\n _;\n }"
- },
- {
- "contract": "0xe472c2b246177E15f18Cf9AC72339A8ed965e5DA",
- "contract_name": "MinterRole",
- "sol_modifier": "modifier onlyMinter() {\n require(isMinter(_msgSender()),\"MinterRole: caller does not have the Minter role\");\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_name.md b/API/callables/callables.with_name.md
deleted file mode 100644
index 2c8dbd1b..00000000
--- a/API/callables/callables.with_name.md
+++ /dev/null
@@ -1,87 +0,0 @@
-# Callables.with\_name()
-
-Adds a filter to get callables having specified name. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To get all but the specified name, refer to [Callables.with\_name\_not()](callables.with\_name\_not.md).
-
-To filter given a list of names, refer to [Callables.with\_names()](callables.with\_names.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the functions named `distributeFunds`
- functions = Functions().with_name("distributeFunds").exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0xaa595607Fce184D734e9Cc14747BFAf563A19269",
- "contract_name": "OperatorInterface",
- "sol_function": "function distributeFunds(address payable[] calldata receivers,uint256[] calldata amounts) external payable;"
- },
- {
- "contract": "0x14E3cF95b9EC4009fB8f0b25e38a558d68339a97",
- "contract_name": "OperatorInterface",
- "sol_function": "function distributeFunds(\n address payable[] calldata receivers,uint[] calldata amounts\n )\n external\n payable;"
- },
- {
- "contract": "0x8810401cb5697834ed07221ec7ec72fda2d8446d",
- "contract_name": "OperatorInterface",
- "sol_function": "function distributeFunds(\n address payable[] calldata receivers,uint256[] calldata amounts\n ) external payable;"
- },
- {
- "contract": "0xc905357377c95925837e3aaa5b0ee2d2a0a87723",
- "contract_name": "Operator",
- "sol_function": "function distributeFunds(\n address payable[] calldata receivers,uint[] calldata amounts\n )\n external\n payable\n {\n require(receivers.length > 0 && receivers.length == amounts.length,\"Invalid array length(s)\");\n uint256 valueRemaining = msg.value;\n for (uint256 i = 0; i < receivers.length; i++) {\n uint256 sendAmount = amounts[i];\n valueRemaining = valueRemaining.sub(sendAmount);\n receivers[i].transfer(sendAmount);\n }\n require(valueRemaining == 0,\"Too much ETH sent\");\n }"
- },
- {
- "contract": "0x7196F3b60eE568830eDf6a22e5B79c2592acF49c",
- "contract_name": "OperatorInterface",
- "sol_function": "function distributeFunds(address payable[] calldata receivers,uint256[] calldata amounts) external payable;"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers named `onlyCaller`
- modifiers = Modifiers().with_name("onlyCaller").exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x7386A87c0ccF7C6d03172B110E58965c26Db221B",
- "contract_name": "BridgeStorage",
- "sol_modifier": "modifier onlyCaller() {\n require(msg.sender == caller,\"only use main contract to call\");\n _;\n }"
- },
- {
- "contract": "0x7386A87c0ccF7C6d03172B110E58965c26Db221B",
- "contract_name": "BridgeLogic",
- "sol_modifier": "modifier onlyCaller(){\n require(msg.sender == caller,\"only main contract can call\");\n _;\n }"
- },
- {
- "contract": "0xba0c2df7c1b5abbc3c058f40b18f5c3940b24122",
- "contract_name": "Presale01",
- "sol_modifier": "modifier onlyCaller() {\n require(CALLER == msg.sender,\"NOT PRESALE CALLER\");\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_name_not.md b/API/callables/callables.with_name_not.md
deleted file mode 100644
index 7a3d9373..00000000
--- a/API/callables/callables.with_name_not.md
+++ /dev/null
@@ -1,97 +0,0 @@
-# Callables.with\_name\_not()
-
-Adds a filter to get callables that that don't have the specified name. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To get the callables with a specified name, refer to [Callables.with\_name()](callables.with\_name.md).
-
-To filter given a list of undesired names, refer to [Callables.with\_names\_not()](callables.with\_names\_not.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve all functions that are not named `distributeFunds`
- functions = Functions().with_name_not("distributeFunds").exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "constructor() {\n _setOwner(_msgSender());\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that are not named `onlyCaller`
- modifiers = Modifiers().with_name_not("onlyCaller").exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_modifier": "modifier onlyOwner() {\n require(owner() == _msgSender(),\"Ownable: caller is not the owner\");\n _;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyOwner() {\n require(owner() == _msgSender(),\"Ownable: caller is not the owner\");\n _;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyMinter() {\n require(msg.sender == minter,'Sender is not the minter');\n _;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyMinterOrOwner() {\n require( (msg.sender == minter) || (msg.sender == owner()),'Sender is not the minter nor owner');\n _;\n }"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "Owned",
- "sol_modifier": "modifier onlyOwner {\n _onlyOwner();\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_names.md b/API/callables/callables.with_names.md
deleted file mode 100644
index d3d43e99..00000000
--- a/API/callables/callables.with_names.md
+++ /dev/null
@@ -1,97 +0,0 @@
-# Callables.with\_names()
-
-Adds a filter to get callables having specified names. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a single name, refer to [Callables.with\_name()](callables.with\_name.md).
-
-To get all but some specified names, refer to [Callables.with\_names\_not()](callables.with\_names\_not.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve all functions that are named `sendMessage` and `totalSupply`
- functions = Functions().with_names(["sendMessage", "totalSupply"]).exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0xB7ecef8430C7a35C522c76b7fEF192b4517b8bB5",
- "contract_name": "ICrossDomainMessenger",
- "sol_function": "function sendMessage(\n address _target,bytes calldata _message,uint32 _gasLimit\n ) external;"
- },
- {
- "contract": "0xeb5080232932DFf03088298233ddb9e8bF1D344f",
- "contract_name": "ICrossDomainMessenger",
- "sol_function": "function sendMessage(\n address _target,bytes calldata _message,uint32 _gasLimit\n ) external;"
- },
- {
- "contract": "0x0312c342aB049CeD994307C1d86B18ff61A22B54",
- "contract_name": "ICrossDomainMessenger",
- "sol_function": "function sendMessage(\n address _target,bytes calldata _message,uint32 _gasLimit\n ) external;"
- },
- {
- "contract": "0x5818840763Ee28ff0A3E3e8CB9eDeDd07Fb1Cd3f",
- "contract_name": "iOVM_CrossDomainMessenger",
- "sol_function": "function sendMessage(\n address _target,bytes calldata _message,uint32 _gasLimit\n ) external;"
- },
- {
- "contract": "0x5818840763Ee28ff0A3E3e8CB9eDeDd07Fb1Cd3f",
- "contract_name": "iOVM_L1CrossDomainMessenger",
- "sol_function": "function sendMessage(\n address _target,bytes calldata _message,uint32 _gasLimit\n ) external;"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that are named `onlyCaller` and `onlyClient`
- modifiers = Modifiers().with_names(["onlyCaller", "onlyClient"]).exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x7386A87c0ccF7C6d03172B110E58965c26Db221B",
- "contract_name": "BridgeStorage",
- "sol_modifier": "modifier onlyCaller() {\n require(msg.sender == caller,\"only use main contract to call\");\n _;\n }"
- },
- {
- "contract": "0x7386A87c0ccF7C6d03172B110E58965c26Db221B",
- "contract_name": "BridgeLogic",
- "sol_modifier": "modifier onlyCaller(){\n require(msg.sender == caller,\"only main contract can call\");\n _;\n }"
- },
- {
- "contract": "0xba0c2df7c1b5abbc3c058f40b18f5c3940b24122",
- "contract_name": "Presale01",
- "sol_modifier": "modifier onlyCaller() {\n require(CALLER == msg.sender,\"NOT PRESALE CALLER\");\n _;\n }"
- },
- {
- "contract": "0x9aa1878934E222F116131D321F7cFd91f4A26d15",
- "contract_name": "EscrowClone",
- "sol_modifier": "modifier onlyClient() {\n require(msg.sender == client);\n _;\n }"
- },
- {
- "contract": "0xdE8C117EE523615B6Ec057d504822694F1191509",
- "contract_name": "TransportationOffert",
- "sol_modifier": "modifier onlyClient(uint _index) {\n require(msg.sender == Agreement_by_No[_index].client,\"Only Client can access this\");\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_names_not.md b/API/callables/callables.with_names_not.md
deleted file mode 100644
index f37465aa..00000000
--- a/API/callables/callables.with_names_not.md
+++ /dev/null
@@ -1,97 +0,0 @@
-# Callables.with\_names\_not()
-
-Adds a filter to get callables that that don't have the specified names. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To get the callables without a specified name, refer to [Callables.with\_name\_not()](callables.with\_name\_not.md).
-
-To filter given a list of names, refer to [Callables.with\_names()](callables.with\_names.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve all functions that are not named `_msgSender` and `_msgData`
- functions = Functions().with_names_not(["_msgSender", "_msgData"]).exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "constructor() {\n _setOwner(_msgSender());\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function owner() public view virtual returns (address) {\n return _owner;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function renounceOwnership() public virtual onlyOwner {\n _setOwner(address(0));\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0),\"Ownable: new owner is the zero address\");\n _setOwner(newOwner);\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve the modifiers that are not named `onlyOwner` and `onlyMinter`
- modifiers = Modifiers().with_names_not(["onlyOwner", "onlyMinter"]).exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyMinterOrOwner() {\n require( (msg.sender == minter) || (msg.sender == owner()),'Sender is not the minter nor owner');\n _;\n }"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "RewardsDistributionRecipient",
- "sol_modifier": "modifier onlyRewardsDistribution() {\n require(msg.sender == rewardsDistribution,\"Caller is not RewardsDistribution contract\");\n _;\n }"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "ReentrancyGuard",
- "sol_modifier": "modifier nonReentrant() {\n \n require(_status != _ENTERED,\"ReentrancyGuard: reentrant call\");\n\n \n _status = _ENTERED;\n\n _;\n\n \n \n _status = _NOT_ENTERED;\n }"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "Pausable",
- "sol_modifier": "modifier notPaused {\n require(!paused,\"This action cannot be performed while the contract is paused\");\n _;\n }"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "StakingRewards",
- "sol_modifier": "modifier notPaused {\n require(!paused,\"This action cannot be performed while the contract is paused\");\n _;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_signature.md b/API/callables/callables.with_signature.md
deleted file mode 100644
index d70d087d..00000000
--- a/API/callables/callables.with_signature.md
+++ /dev/null
@@ -1,95 +0,0 @@
-# Callables.with\_signature()
-
-Adds a filter to get callables that have the given signature. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a list of signatures, refer to [Callables.with\_signatures()](callables.with\_signatures.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve all functions with the signature `transferFrom(address,address,uint256)`
- functions = Functions().with_signature("transferFrom(address,address,uint256)").exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "IERC721",
- "sol_function": "function transferFrom(\n address from,address to,uint256 tokenId\n ) external;"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "IERC721Metadata",
- "sol_function": "function transferFrom(\n address from,address to,uint256 tokenId\n ) external;"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function transferFrom(\n address from,address to,uint256 tokenId\n ) public virtual override {\n \n require(_isApprovedOrOwner(_msgSender(),tokenId),\"ERC721: transfer caller is not owner nor approved\");\n\n _transfer(from,to,tokenId);\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721URIStorage",
- "sol_function": "function transferFrom(\n address from,address to,uint256 tokenId\n ) public virtual override {\n \n require(_isApprovedOrOwner(_msgSender(),tokenId),\"ERC721: transfer caller is not owner nor approved\");\n\n _transfer(from,to,tokenId);\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_function": "function transferFrom(\n address from,address to,uint256 tokenId\n ) public virtual override {\n \n require(_isApprovedOrOwner(_msgSender(),tokenId),\"ERC721: transfer caller is not owner nor approved\");\n\n _transfer(from,to,tokenId);\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve all the modifiers with the signature `nonReentrant()`
- modifiers = Modifiers().with_signature("nonReentrant()").exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "ReentrancyGuard",
- "sol_modifier": "modifier nonReentrant() {\n \n require(_status != _ENTERED,\"ReentrancyGuard: reentrant call\");\n\n \n _status = _ENTERED;\n\n _;\n\n \n \n _status = _NOT_ENTERED;\n }"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "StakingRewards",
- "sol_modifier": "modifier nonReentrant() {\n \n require(_status != _ENTERED,\"ReentrancyGuard: reentrant call\");\n\n \n _status = _ENTERED;\n\n _;\n\n \n \n _status = _NOT_ENTERED;\n }"
- },
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "ReentrancyGuard",
- "sol_modifier": "modifier nonReentrant() {\n \n require(_status != _ENTERED,\"ReentrancyGuard: reentrant call\");\n\n \n _status = _ENTERED;\n\n _;\n\n \n \n _status = _NOT_ENTERED;\n }"
- },
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "Vault",
- "sol_modifier": "modifier nonReentrant() {\n \n require(_status != _ENTERED,\"ReentrancyGuard: reentrant call\");\n\n \n _status = _ENTERED;\n\n _;\n\n \n \n _status = _NOT_ENTERED;\n }"
- },
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "GatewayVault",
- "sol_modifier": "modifier nonReentrant() {\n \n require(_status != _ENTERED,\"ReentrancyGuard: reentrant call\");\n\n \n _status = _ENTERED;\n\n _;\n\n \n \n _status = _NOT_ENTERED;\n }"
- }
-]
-```
diff --git a/API/callables/callables.with_signatures.md b/API/callables/callables.with_signatures.md
deleted file mode 100644
index 7d4ac76f..00000000
--- a/API/callables/callables.with_signatures.md
+++ /dev/null
@@ -1,105 +0,0 @@
-# Callables.with\_signatures()
-
-Adds a filter to get callables that have any of the given signatures. Returns a filtered [Callables](./) child object. This method can be called on all [Callables](./) child classes: [Functions](../functions/) and [Modifiers](../modifiers/).
-
-To filter given a single signature, refer to [Callables.with\_signature()](callables.with\_signature.md).
-
-### Functions Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve all functions that have `approve(address)` or `claim(address,uint256)` as signatures
- functions = Functions() \
- .with_signatures([
- "approve(address)",
- "claim(address,uint256)"
- ]) \
- .exec(100)
-
- # Return the first five functions
- return functions[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0xb0d5eAC91C77997647875B9A72d5Bff1e78DAa78",
- "contract_name": "Arb",
- "sol_function": "function approve(address bamm) external {\n ERC20Like(LUSD).approve(address(bamm),uint(-1));\n }"
- },
- {
- "contract": "0xea883c61b9eafd13ce094a66da3b379619133e7f",
- "contract_name": "DSTokenAbstract",
- "sol_function": "function approve(address) external returns (bool);"
- },
- {
- "contract": "0xa64ef2edf816072f90afc89b21aae883d5a4de00",
- "contract_name": "DSToken",
- "sol_function": "function approve(address guy) public stoppable returns (bool) {\n return super.approve(guy,uint(-1));\n }"
- },
- {
- "contract": "0x1c45e40a948bB9B4684B94239d5FD73e3a9cAD8A",
- "contract_name": "IRegistry",
- "sol_function": "function approve(address _addr) external;"
- },
- {
- "contract": "0x1c45e40a948bB9B4684B94239d5FD73e3a9cAD8A",
- "contract_name": "Registry",
- "sol_function": "function approve(address _addr) external override onlyOwner {\n require(!_approved[_addr],\"_addr approved\");\n _approved[_addr] = true;\n emit Approve(_addr);\n }"
- }
-]
-```
-
-### Modifiers Example
-
-```python
-from glider import *
-
-def query():
- # Retrieve all the modifiers that have `nonReentrant()` or `initializer()` as their signatures
- modifiers = Modifiers() \
- .with_signatures([
- "nonReentrant()",
- "initializer()"
- ]) \
- .exec(100)
-
- # Return the first five modifiers
- return modifiers[0:5]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23",
- "contract_name": "Initializable",
- "sol_modifier": "modifier initializer() {\n require(_initializing || _isConstructor() || !_initialized,\"Initializable: contract is already initialized\");\n\n bool isTopLevelCall = !_initializing;\n if (isTopLevelCall) {\n _initializing = true;\n _initialized = true;\n }\n\n _;\n\n if (isTopLevelCall) {\n _initializing = false;\n }\n }"
- },
- {
- "contract": "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23",
- "contract_name": "ChainlinkInceptionPriceFeed",
- "sol_modifier": "modifier initializer() {\n require(_initializing || _isConstructor() || !_initialized,\"Initializable: contract is already initialized\");\n\n bool isTopLevelCall = !_initializing;\n if (isTopLevelCall) {\n _initializing = true;\n _initialized = true;\n }\n\n _;\n\n if (isTopLevelCall) {\n _initializing = false;\n }\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "Initializable",
- "sol_modifier": "modifier initializer() {\n require(_initializing || _isConstructor() || !_initialized,\"Initializable: contract is already initialized\");\n\n bool isTopLevelCall = !_initializing;\n if (isTopLevelCall) {\n _initializing = true;\n _initialized = true;\n }\n\n _;\n\n if (isTopLevelCall) {\n _initializing = false;\n }\n }"
- },
- {
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "Core",
- "sol_modifier": "modifier initializer() {\n require(_initializing || _isConstructor() || !_initialized,\"Initializable: contract is already initialized\");\n\n bool isTopLevelCall = !_initializing;\n if (isTopLevelCall) {\n _initializing = true;\n _initialized = true;\n }\n\n _;\n\n if (isTopLevelCall) {\n _initializing = false;\n }\n }"
- },
- {
- "contract": "0xb51Da721B77Db063B02b79D7e79558b9C2e34Ea6",
- "contract_name": "Initializable",
- "sol_modifier": "modifier initializer() {\n require(initializing || isConstructor() || !initialized,\"Contract instance has already been initialized\");\n\n bool isTopLevelCall = !initializing;\n if (isTopLevelCall) {\n initializing = true;\n initialized = true;\n }\n\n _;\n\n if (isTopLevelCall) {\n initializing = false;\n }\n }"
- }
-]
-```
diff --git a/API/callgraph/README.md b/API/callgraph/README.md
deleted file mode 100644
index 7bf65f44..00000000
--- a/API/callgraph/README.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# CallGraph
-
-This class represents a call graph.
-
-Bases: **object**
-
-{% content-ref url="callgraph.name_prefix.md" %}
-[callgraph.name\_prefix.md](callgraph.name\_prefix.md)
-{% endcontent-ref %}
-
-{% content-ref url="callgraph.name_suffix.md" %}
-[callgraph.name\_suffix.md](callgraph.name\_suffix.md)
-{% endcontent-ref %}
-
-{% content-ref url="callgraph.nodes.md" %}
-[callgraph.nodes.md](callgraph.nodes.md)
-{% endcontent-ref %}
-
-{% content-ref url="callgraph.with_name.md" %}
-[callgraph.with\_name.md](callgraph.with\_name.md)
-{% endcontent-ref %}
-
-{% content-ref url="callgraph.with_name_not.md" %}
-[callgraph.with\_name\_not.md](callgraph.with\_name\_not.md)
-{% endcontent-ref %}
diff --git a/API/callgraph/callgraph.name_prefix.md b/API/callgraph/callgraph.name_prefix.md
deleted file mode 100644
index d9812652..00000000
--- a/API/callgraph/callgraph.name_prefix.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# CallGraph.name\_prefix()
-
-**`name_prefix`**`(`_`suffix: str`_`,`` `_`sensitivity: bool = True`_`) → List[`[`CallNode`](../callnode/)`]`
-
-Returns a list of [CallNode](../callnode/) objects whose corresponding function name has the specified prefix.
-
-## Return type
-
-`→ List[`[`CallNode`](../callnode/)`]`
-
-from glider import *
-
-def query():
- # Fetch the first contract
- contracts = Contracts().exec(1)
-
- # Get call nodes of functions starting with "_msgSend"
- call_nodes = contracts[0].call_graph().name_prefix("_msgSend")
- for node in call_nodes:
- print(node.function_name())
- return []
-
-
-Output:
-
-```json
-{
- "print_output": [
- "_msgSender"
- ]
-}
-```
diff --git a/API/callgraph/callgraph.name_suffix.md b/API/callgraph/callgraph.name_suffix.md
deleted file mode 100644
index beefc76b..00000000
--- a/API/callgraph/callgraph.name_suffix.md
+++ /dev/null
@@ -1,33 +0,0 @@
-# CallGraph.name\_suffix()
-
-**`name_suffix`**`(`_`suffix: str`_`,`` `_`sensitivity: bool = True`_`) → List[`[`CallNode`](../callnode/)`]`
-
-Returns a list of [CallNode](../callnode/) objects whose corresponding function name has the specified suffix.
-
-## Return type
-
-`→ List[`[`CallNode`](../callnode/)`]`
-
-```python
-from glider import *
-
-def query():
- # Fetch the first contract
- contracts = Contracts().exec(1)
-
- # Get call nodes of functions ending with "Sender"
- call_nodes = contracts[0].call_graph().name_suffix("Sender")
- for node in call_nodes:
- print(node.function_name())
- return []
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "_msgSender"
- ]
-}
-```
diff --git a/API/callgraph/callgraph.nodes.md b/API/callgraph/callgraph.nodes.md
deleted file mode 100644
index e526f122..00000000
--- a/API/callgraph/callgraph.nodes.md
+++ /dev/null
@@ -1,33 +0,0 @@
-# CallGraph.nodes()
-
-**`nodes`**`() → Dict[str,` [`CallNode`](../callnode/)`]`
-
-Returns the map of all call nodes. The key of the map is the id of a node.
-
-```python
-from glider import *
-
-def query():
- # Query first contract
- contracts = Contracts().exec(1)
-
- # Get all call nodes from the contract's call graph
- call_nodes = contracts[0].call_graph().nodes()
-
- # print all call nodes' corresponding function names
- for node_id in call_nodes:
- print(call_nodes[node_id].function_name())
- return []
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "_msgSender",
- "_msgData"
- ]
-}
-```
-
diff --git a/API/callgraph/callgraph.with_name.md b/API/callgraph/callgraph.with_name.md
deleted file mode 100644
index e2dd4624..00000000
--- a/API/callgraph/callgraph.with_name.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# CallGraph.with\_name()
-
-**`with_name`**`(`_`name: str`_`,`` `_`sensitivity: bool = True`_`) → List[`[`CallNode`](../callnode/)`]`
-
-Returns a list of call nodes whose corresponding function has the specified name.
-
-## Return type
-
-`→ List[`[`CallNode`](../callnode/)`]`
-
-from glider import *
-
-def query():
- # Fetch the first contract
- contracts = Contracts().exec(1)
-
- # Get call nodes of functions whose name is "_msgSender"
- call_nodes = contracts[0].call_graph().with_name("_msgSender")
- for node in call_nodes:
- print(node.function_name())
- return []
-
-
-Output:
-
-```json
-{
- "print_output": [
- "_msgSender"
- ]
-}
-```
diff --git a/API/callgraph/callgraph.with_name_not.md b/API/callgraph/callgraph.with_name_not.md
deleted file mode 100644
index c391ffe4..00000000
--- a/API/callgraph/callgraph.with_name_not.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# CallGraph.with\_name\_not()
-
-**`with_name_not`**`(`_`name: str`_`,`` `_`sensitivity: bool = True`_`) → List[`[`CallNode`](../callnode/)`]`
-
-Returns a list of call nodes whose corresponding function doesn't have the specified name.
-
-## Return type
-
-`→ List[`[`CallNode`](../callnode/)`]`
-
-from glider import *
-
-def query():
- # Fetch the first contract
- contracts = Contracts().exec(1)
-
- # Get call nodes of functions whose name is not "_msgSender"
- call_nodes = contracts[0].call_graph().with_name_not("_msgSender")
- for node in call_nodes:
- print(node.function_name())
- return []
-
-
-Output:
-
-```json
-{
- "print_output": [
- "_msgData"
- ]
-}
-```
diff --git a/API/callnode/README.md b/API/callnode/README.md
deleted file mode 100644
index c742a7e4..00000000
--- a/API/callnode/README.md
+++ /dev/null
@@ -1,31 +0,0 @@
----
-description: The class represents a single node in a call graph.
----
-
-# CallNode
-
-Bases: **object**
-
-{% content-ref url="callnode.callee_functions.md" %}
-[callnode.callee\_functions.md](callnode.callee\_functions.md)
-{% endcontent-ref %}
-
-{% content-ref url="callnode.callees.md" %}
-[callnode.callees.md](callnode.callees.md)
-{% endcontent-ref %}
-
-{% content-ref url="callnode.caller_functions.md" %}
-[callnode.caller\_functions.md](callnode.caller\_functions.md)
-{% endcontent-ref %}
-
-{% content-ref url="callnode.callers.md" %}
-[callnode.callers.md](callnode.callers.md)
-{% endcontent-ref %}
-
-{% content-ref url="callnode.function.md" %}
-[callnode.function.md](callnode.function.md)
-{% endcontent-ref %}
-
-{% content-ref url="callnode.function_name.md" %}
-[callnode.function\_name.md](callnode.function\_name.md)
-{% endcontent-ref %}
diff --git a/API/callnode/callnode.callee_functions.md b/API/callnode/callnode.callee_functions.md
deleted file mode 100644
index f8d6ca9b..00000000
--- a/API/callnode/callnode.callee_functions.md
+++ /dev/null
@@ -1,49 +0,0 @@
----
-description: >-
- Returns Functions object for the functions that are called from the current
- node corresponding function.
----
-
-# CallNode.callee\_functions()
-
-```python
-from glider import *
-
-# task: find a function that has `burn*` call and print all the functions that is called from it
-
-def query():
- data = []
- instructions = Instructions().with_called_function_name_prefix('burn').exec(10)
- for instruction in instructions:
- if len(data) > 0:
- break # demo first result only
- functionContainsBurn = instruction.get_parent() #api.functions.Function (*)
- contract = functionContainsBurn.get_contract() #api.contracts.Contract
- call_graph = contract.call_graph() #api.call_graph.CallGraph
- nodes = call_graph.nodes() #Dict[str, CallNode]
- for id in nodes:
- if(id != functionContainsBurn.db_id):
- continue
- callee_functions = nodes[id].callee_functions #api.functions.Functions
- callees = callee_functions().exec() #List[Function]
- if len(callees) > 0:
- print(functionContainsBurn.source_code())
- for callee in callees:
- print("callee: " + callee.name())
- data.append(instruction)
- return data
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "function _burnRusdHeld() internal {\n rusd().burn(rusdBalance());\n }",
- "callee: rusd",
- "callee: rusdBalance",
- "callee: burn",
- "callee: burn"
- ]
-}
-```
diff --git a/API/callnode/callnode.callees.md b/API/callnode/callnode.callees.md
deleted file mode 100644
index f48b25bf..00000000
--- a/API/callnode/callnode.callees.md
+++ /dev/null
@@ -1,44 +0,0 @@
----
-description: >-
- Returns a list of CallNode whose corresponding functions are called from the
- current CallNode corresponding function.
----
-
-# CallNode.callees()
-
-```python
-from glider import *
-
-def query():
- data = []
- instructions = Instructions().with_called_function_name_prefix('burn').exec(10)
- for instruction in instructions:
- if len(data) > 0:
- break # demo first result only
- functionContainsBurn = instruction.get_parent() #api.functions.Function (*)
- contract = functionContainsBurn.get_contract() #api.contracts.Contract
- call_graph = contract.call_graph() #api.call_graph.CallGraph
- nodes = call_graph.nodes() #Dict[str, CallNode]
- for id in nodes:
- if(id != functionContainsBurn.db_id):
- continue
- callees = nodes[id].callees() #List[CallNode]
- if len(callees) > 0:
- print(functionContainsBurn.source_code())
- for callee in callees:
- print("callee: " + callee.function_name())
- data.append(instruction)
- return data
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "function _burnRusdHeld() internal {\n rusd().burn(rusdBalance());\n }",
- "callee: rusd",
- "callee: rusdBalance"
- ]
-}
-```
diff --git a/API/callnode/callnode.caller_functions.md b/API/callnode/callnode.caller_functions.md
deleted file mode 100644
index 5908c5db..00000000
--- a/API/callnode/callnode.caller_functions.md
+++ /dev/null
@@ -1,48 +0,0 @@
----
-description: >-
- Returns Functions object for the functions that call the current node
- corresponding function.
----
-
-# CallNode.caller\_functions()
-
-```python
-from glider import *
-
-# task: find a function that has `burn*` call and return all the functions that has a call to that function
-
-def query():
- data = []
- instructions = Instructions().with_called_function_name_prefix('burn').exec(10)
- for instruction in instructions:
- if len(data) > 0:
- break # demo first result only
- functionContainsBurn = instruction.get_parent() #api.functions.Function (*)
- contract = functionContainsBurn.get_contract() #api.contracts.Contract
- call_graph = contract.call_graph() #api.call_graph.CallGraph
- nodes = call_graph.nodes() #Dict[str, CallNode]
- for id in nodes:
- if(id != functionContainsBurn.db_id):
- continue
- caller_functions = nodes[id].caller_functions #api.functions.Functions
- callers = caller_functions().exec() #List[Function]
- if len(callers) > 0:
- print(functionContainsBurn.source_code())
- for caller in callers:
- print(caller.source_code())
- data.append(instruction)
- return data
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "function _beforeTokenTransfer(\n address from,address to,uint256 amount\n ) internal virtual override {\n super._beforeTokenTransfer(from,to,amount);\n \n if (from == address(0) && to != address(0)) {\n require(_erc20TokenAddress != address(0),\"_erc20TokenAddress must be defined\");\n uint256 balanceOfAddress = IERC20(_erc20TokenAddress).balanceOf(to);\n require(balanceOfAddress >= 1,\"user does not hold a token\");\n ERC20Burnable(_erc20TokenAddress).burnFrom(to,1);\n }\n }",
- "function _mint(address to,uint256 tokenId) internal virtual {\n require(to != address(0),\"ERC721: mint to the zero address\");\n require(!_exists(tokenId),\"ERC721: token already minted\");\n\n _beforeTokenTransfer(address(0),to,tokenId);\n\n _balances[to] += 1;\n _owners[tokenId] = to;\n\n emit Transfer(address(0),to,tokenId);\n\n _afterTokenTransfer(address(0),to,tokenId);\n }",
- "function _burn(uint256 tokenId) internal virtual {\n address owner = ERC721.ownerOf(tokenId);\n\n _beforeTokenTransfer(owner,address(0),tokenId);\n\n \n _approve(address(0),tokenId);\n\n _balances[owner] -= 1;\n delete _owners[tokenId];\n\n emit Transfer(owner,address(0),tokenId);\n\n _afterTokenTransfer(owner,address(0),tokenId);\n }",
- "function _transfer(\n address from,address to,uint256 tokenId\n ) internal virtual {\n require(ERC721.ownerOf(tokenId) == from,\"ERC721: transfer from incorrect owner\");\n require(to != address(0),\"ERC721: transfer to the zero address\");\n\n _beforeTokenTransfer(from,to,tokenId);\n\n \n _approve(address(0),tokenId);\n\n _balances[from] -= 1;\n _balances[to] += 1;\n _owners[tokenId] = to;\n\n emit Transfer(from,to,tokenId);\n\n _afterTokenTransfer(from,to,tokenId);\n }"
- ]
-}
-```
diff --git a/API/callnode/callnode.callers.md b/API/callnode/callnode.callers.md
deleted file mode 100644
index 5ae54645..00000000
--- a/API/callnode/callnode.callers.md
+++ /dev/null
@@ -1,45 +0,0 @@
----
-description: >-
- Returns a list of CallNodes whose corresponding functions call the current
- node's corresponding function.
----
-
-# CallNode.callers()
-
-```python
-from glider import *
-
-def query():
- data = []
- instructions = Instructions().with_called_function_name_prefix('burn').exec(10)
- for instruction in instructions:
- if len(data) > 0:
- break # demo first result only
- functionContainsBurn = instruction.get_parent() #api.functions.Function (*)
- contract = functionContainsBurn.get_contract() #api.contracts.Contract
- call_graph = contract.call_graph() #api.call_graph.CallGraph
- nodes = call_graph.nodes() #Dict[str, CallNode]
- for id in nodes:
- if(id != functionContainsBurn.db_id):
- continue
- callers = nodes[id].callers() #List[CallNode]
- if len(callers) > 0:
- print(functionContainsBurn.source_code())
- for caller in callers:
- print("caller: " + caller.function_name())
- data.append(instruction)
- return data
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "function _beforeTokenTransfer(\n address from,address to,uint256 amount\n ) internal virtual override {\n super._beforeTokenTransfer(from,to,amount);\n \n if (from == address(0) && to != address(0)) {\n require(_erc20TokenAddress != address(0),\"_erc20TokenAddress must be defined\");\n uint256 balanceOfAddress = IERC20(_erc20TokenAddress).balanceOf(to);\n require(balanceOfAddress >= 1,\"user does not hold a token\");\n ERC20Burnable(_erc20TokenAddress).burnFrom(to,1);\n }\n }",
- "caller: _mint",
- "caller: _burn",
- "caller: _transfer"
- ]
-}
-```
diff --git a/API/callnode/callnode.function.md b/API/callnode/callnode.function.md
deleted file mode 100644
index fac38a20..00000000
--- a/API/callnode/callnode.function.md
+++ /dev/null
@@ -1,53 +0,0 @@
----
-description: Returns corresponding function.
----
-
-# CallNode.function()
-
-```python
-from glider import *
-
-# find a contract with name UnistakeToken and print source code of all the functions
-def query():
- contracts = Contracts().name_regex("UnistakeToken").exec(5)
- for contract in contracts:
- call_graph = contract.call_graph() #api.call_graph.CallGraph instance
- nodes = call_graph.nodes() #api.call_graph.CallNode instance
- for id in nodes:
- fn = nodes[id].function() #api.functions.Function instance
- print(fn.source_code()) #api.functions.Callable instance (base class of api.functions.Function)
- return contracts
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "function burn(uint256 amount) public virtual {\n _burn(_msgSender(),amount);\n }",
- "function burnFrom(address account,uint256 amount) public virtual {\n _spendAllowance(account,_msgSender(),amount);\n _burn(account,amount);\n }",
- "constructor(string memory name_,string memory symbol_) {\n _name = name_;\n _symbol = symbol_;\n }",
- "function name() public view virtual override returns (string memory) {\n return _name;\n }",
- "function symbol() public view virtual override returns (string memory) {\n return _symbol;\n }",
- "function decimals() public view virtual override returns (uint8) {\n return 18;\n }",
- "function totalSupply() public view virtual override returns (uint256) {\n return _totalSupply;\n }",
- "function balanceOf(address account) public view virtual override returns (uint256) {\n return _balances[account];\n }",
- "function transfer(address to,uint256 amount) public virtual override returns (bool) {\n address owner = _msgSender();\n _transfer(owner,to,amount);\n return true;\n }",
- "function allowance(address owner,address spender) public view virtual override returns (uint256) {\n return _allowances[owner][spender];\n }",
- "function approve(address spender,uint256 amount) public virtual override returns (bool) {\n address owner = _msgSender();\n _approve(owner,spender,amount);\n return true;\n }",
- "function transferFrom(\n address from,address to,uint256 amount\n ) public virtual override returns (bool) {\n address spender = _msgSender();\n _spendAllowance(from,spender,amount);\n _transfer(from,to,amount);\n return true;\n }",
- "function increaseAllowance(address spender,uint256 addedValue) public virtual returns (bool) {\n address owner = _msgSender();\n _approve(owner,spender,allowance(owner,spender) + addedValue);\n return true;\n }",
- "function decreaseAllowance(address spender,uint256 subtractedValue) public virtual returns (bool) {\n address owner = _msgSender();\n uint256 currentAllowance = allowance(owner,spender);\n require(currentAllowance >= subtractedValue,\"ERC20: decreased allowance below zero\");\n unchecked {\n _approve(owner,spender,currentAllowance - subtractedValue);\n }\n\n return true;\n }",
- "function _transfer(\n address from,address to,uint256 amount\n ) internal virtual {\n require(from != address(0),\"ERC20: transfer from the zero address\");\n require(to != address(0),\"ERC20: transfer to the zero address\");\n\n _beforeTokenTransfer(from,to,amount);\n\n uint256 fromBalance = _balances[from];\n require(fromBalance >= amount,\"ERC20: transfer amount exceeds balance\");\n unchecked {\n _balances[from] = fromBalance - amount;\n }\n _balances[to] += amount;\n\n emit Transfer(from,to,amount);\n\n _afterTokenTransfer(from,to,amount);\n }",
- "function _mint(address account,uint256 amount) internal virtual {\n require(account != address(0),\"ERC20: mint to the zero address\");\n\n _beforeTokenTransfer(address(0),account,amount);\n\n _totalSupply += amount;\n _balances[account] += amount;\n emit Transfer(address(0),account,amount);\n\n _afterTokenTransfer(address(0),account,amount);\n }",
- "function _burn(address account,uint256 amount) internal virtual {\n require(account != address(0),\"ERC20: burn from the zero address\");\n\n _beforeTokenTransfer(account,address(0),amount);\n\n uint256 accountBalance = _balances[account];\n require(accountBalance >= amount,\"ERC20: burn amount exceeds balance\");\n unchecked {\n _balances[account] = accountBalance - amount;\n }\n _totalSupply -= amount;\n\n emit Transfer(account,address(0),amount);\n\n _afterTokenTransfer(account,address(0),amount);\n }",
- "function _approve(\n address owner,address spender,uint256 amount\n ) internal virtual {\n require(owner != address(0),\"ERC20: approve from the zero address\");\n require(spender != address(0),\"ERC20: approve to the zero address\");\n\n _allowances[owner][spender] = amount;\n emit Approval(owner,spender,amount);\n }",
- "function _spendAllowance(\n address owner,address spender,uint256 amount\n ) internal virtual {\n uint256 currentAllowance = allowance(owner,spender);\n if (currentAllowance != type(uint256).max) {\n require(currentAllowance >= amount,\"ERC20: insufficient allowance\");\n unchecked {\n _approve(owner,spender,currentAllowance - amount);\n }\n }\n }",
- "function _beforeTokenTransfer(\n address from,address to,uint256 amount\n ) internal virtual {}",
- "function _afterTokenTransfer(\n address from,address to,uint256 amount\n ) internal virtual {}",
- "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }",
- "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }",
- "constructor() ERC20(\"Unistake Token\",\"UNISTAKE\") {\n _mint(msg.sender,280000000 * 10**18);\n }"
- ]
-}
-```
diff --git a/API/callnode/callnode.function_name.md b/API/callnode/callnode.function_name.md
deleted file mode 100644
index 30b69efe..00000000
--- a/API/callnode/callnode.function_name.md
+++ /dev/null
@@ -1,53 +0,0 @@
----
-description: Returns corresponding function name.
----
-
-# CallNode.function\_name()
-
-```python
-from glider import *
-
-# find a contract with name UnistakeToken and print all the functions inside
-def query():
- contracts = Contracts().name_regex("UnistakeToken").exec(5)
- for contract in contracts:
- call_graph = contract.call_graph() #api.call_graph.CallGraph instance
- nodes = call_graph.nodes() #api.call_graph.CallNode instance
- for id in nodes:
- print(nodes[id].function_name())
- return contracts
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "burn",
- "burnFrom",
- "constructor",
- "name",
- "symbol",
- "decimals",
- "totalSupply",
- "balanceOf",
- "transfer",
- "allowance",
- "approve",
- "transferFrom",
- "increaseAllowance",
- "decreaseAllowance",
- "_transfer",
- "_mint",
- "_burn",
- "_approve",
- "_spendAllowance",
- "_beforeTokenTransfer",
- "_afterTokenTransfer",
- "_msgSender",
- "_msgData",
- "constructor"
- ]
-}
-```
-
diff --git a/API/catchinstruction/README.md b/API/catchinstruction/README.md
deleted file mode 100644
index 3243d39d..00000000
--- a/API/catchinstruction/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# CatchInstruction
-
diff --git a/API/catchinstruction/catchinstruction.get_block_instructions.md b/API/catchinstruction/catchinstruction.get_block_instructions.md
deleted file mode 100644
index 1bff2095..00000000
--- a/API/catchinstruction/catchinstruction.get_block_instructions.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# CatchInstruction.get\_block\_instructions()
-
diff --git a/API/condition/README.md b/API/condition/README.md
deleted file mode 100644
index 43f11408..00000000
--- a/API/condition/README.md
+++ /dev/null
@@ -1,29 +0,0 @@
----
-description: The class represents a condition.
----
-
-# Condition
-
-Base: **object**
-
-***
-
-{% content-ref url="condition.is_eq.md" %}
-[condition.is\_eq.md](condition.is\_eq.md)
-{% endcontent-ref %}
-
-{% content-ref url="condition.is_geq.md" %}
-[condition.is\_geq.md](condition.is\_geq.md)
-{% endcontent-ref %}
-
-{% content-ref url="condition.is_gr.md" %}
-[condition.is\_gr.md](condition.is\_gr.md)
-{% endcontent-ref %}
-
-{% content-ref url="condition.is_le.md" %}
-[condition.is\_le.md](condition.is\_le.md)
-{% endcontent-ref %}
-
-{% content-ref url="condition.is_leq.md" %}
-[condition.is\_leq.md](condition.is\_leq.md)
-{% endcontent-ref %}
diff --git a/API/condition/condition.is_eq.md b/API/condition/condition.is_eq.md
deleted file mode 100644
index f60f981f..00000000
--- a/API/condition/condition.is_eq.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: Returns true if it is an equality check, otherwise returns false.
----
-
-# Condition.is\_eq()
-
-```python
-from glider import *
-
-def query():
- functions = Functions().name_prefix('checkIf').exec(5)
- for func in functions:
- if_instructions = func.if_instructions() # api.instructions.IfInstruction's instance
- if(len(if_instructions) > 0):
- print(func.if_instructions()[0].source_code())
- # this will print True if the comparition operators is equal ("==")
- print(func.if_instructions()[0].get_condition().is_eq())
- return functions
-```
-
-Outputs:
-
-```
-{
- "print_output": [
- "payGroup[i] == msg.sender",
- "True",
- "dexFactory != address(0)",
- "False",
- "size == 0",
- "True",
- "m_Bots[_address]",
- "False"
- ]
-}
-```
diff --git a/API/condition/condition.is_geq.md b/API/condition/condition.is_geq.md
deleted file mode 100644
index f663a219..00000000
--- a/API/condition/condition.is_geq.md
+++ /dev/null
@@ -1,37 +0,0 @@
----
-description: Returns true if it is ">=" check, otherwise returns false.
----
-
-# Condition.is\_geq()
-
-```python
-from glider import *
-
-def query():
- functions = Functions().name_prefix('checkIf').exec(200)
- results = []
- for func in functions:
- if_instructions = func.if_instructions() # api.instructions.IfInstruction's instance
- if(len(if_instructions) > 0):
- # this will be True if the comparition operators is greater than or equal (">=")
- is_geq = func.if_instructions()[0].get_condition().is_geq()
- if is_geq:
- print(func.if_instructions()[0].source_code())
- results.append(func)
- return results
-```
-
-
-
-Output:
-
-```
-{
- "print_output": [
- "block.timestamp >= nd2GivingDeadline",
- "True",
- "m_Bots[_address] >= 2",
- "True"
- ]
-}
-```
diff --git a/API/condition/condition.is_gr.md b/API/condition/condition.is_gr.md
deleted file mode 100644
index 14c94b95..00000000
--- a/API/condition/condition.is_gr.md
+++ /dev/null
@@ -1,35 +0,0 @@
----
-description: Returns true if it is ">" check, otherwise returns false.
----
-
-# Condition.is\_gr()
-
-```python
-from glider import *
-
-def query():
- functions = Functions().name_prefix('checkIf').exec(200)
- results = []
- for func in functions:
- if_instructions = func.if_instructions() # api.instructions.IfInstruction's instance
- if(len(if_instructions) > 0):
- # this will be True if the comparition operators is greater than (">")
- is_gr = func.if_instructions()[0].get_condition().is_gr()
- if is_gr:
- print(func.if_instructions()[0].source_code())
- results.append(func)
- return results
-```
-
-
-
-Ouput:
-
-```
-{
- "print_output": [
- "arts[_traitId][_rarityId].length > 0",
- "arts[_traitId][_rarityId].length > 0"
- ]
-}
-```
diff --git a/API/condition/condition.is_le.md b/API/condition/condition.is_le.md
deleted file mode 100644
index 9db928de..00000000
--- a/API/condition/condition.is_le.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Returns true if it is "<" check, otherwise returns false.
----
-
-# Condition.is\_le()
-
-```python
-from glider import *
-
-def query():
- functions = Functions().name_prefix('checkIf').exec(200)
- results = []
- for func in functions:
- if_instructions = func.if_instructions() # api.instructions.IfInstruction's instance
- if(len(if_instructions) > 0):
- # this will be True if the comparition operators is less than ("<")
- is_le = func.if_instructions()[0].get_condition().is_le()
- if is_le:
- print(func.if_instructions()[0].source_code())
- results.append(func)
- return results
-```
-
-
-
-Output:
-
-```
-{
- "print_output": [
- "(address token0,address token1) = tokenA < tokenB ? (tokenA,tokenB) : (tokenB,tokenA)"
- ]
-}
-```
diff --git a/API/condition/condition.is_leq.md b/API/condition/condition.is_leq.md
deleted file mode 100644
index 151d892f..00000000
--- a/API/condition/condition.is_leq.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: Returns true if it is "<=" check, otherwise returns false.
----
-
-# Condition.is\_leq()
-
-```python
-from glider import *
-
-def query():
- functions = Functions().name_prefix('checkIf').exec(300)
- results = []
- uniq_source_code = []
- for func in functions:
- if_instructions = func.if_instructions() # api.instructions.IfInstruction's instance
- if(len(if_instructions) > 0):
- # this will be True if the comparition operators is less than or equal ("<=")
- is_leq = func.if_instructions()[0].get_condition().is_leq()
- source_code = func.if_instructions()[0].source_code()
- if is_leq and source_code not in uniq_source_code:
- uniq_source_code.append(source_code)
- print(func.if_instructions()[0].source_code())
- results.append(func)
- return results
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "debtRatio_ <= MAX_DEBT_RATIO",
- "vesting[cachedIndexVesting[referrals[i].referralAddr] - 1].tokensReserved <= 1"
- ]
-}
-```
diff --git a/API/continueinstruction.md b/API/continueinstruction.md
deleted file mode 100644
index 92ca5565..00000000
--- a/API/continueinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# ContinueInstruction
-
diff --git a/API/contract/README.md b/API/contract/README.md
deleted file mode 100644
index 97671dc2..00000000
--- a/API/contract/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Contract
-
diff --git a/API/contract/contract.address.md b/API/contract/contract.address.md
deleted file mode 100644
index 9bc139ea..00000000
--- a/API/contract/contract.address.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contract.address()
-
-## Description
-
-It returns the on-chain address of a Contract.
-
-## Return type
-
-str (e.g. `"0x798AcB51D8FBc97328835eE2027047a8B54533AD"`)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_name("ERC721").exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-## Example output
-
-```json
-{
- "addresses": [
- "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "0x27A05e7a40F2d980F8853e94c3cE54C70e68527D",
- "0x3450955Ffe1e8DE92c7348a497d7Fc2C9283ff3d",
- "0x961868ff892031fd3197AAC138e358b5983f59a8",
- "0x404bB1626E4e2EC681FDE0Bf6D3E36c1246B8173"
- ]
-}
-```
diff --git a/API/contract/contract.base_contracts.md b/API/contract/contract.base_contracts.md
deleted file mode 100644
index e1319f04..00000000
--- a/API/contract/contract.base_contracts.md
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contract.base\_contracts()
-
-## Description
-
-It returns the inherited base contracts of a Contract. The function is recursive. See the example.
-
-## Return type
-
-[Contracts](../contracts/)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(1, 6)
-
- names = []
- for contract in contracts:
- bases = contract.base_contracts().exec()
-
- for base in bases:
- names.append(base.name)
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "Context",
- "ERC165",
- "IERC165",
- "IERC721",
- "IERC721Metadata"
- ]
-}
-```
-
-If you add `print(contract.source_code())` to the loop, you will see these contracts in the declaration: `contract ERC721 is Context, ERC165, IERC721, IERC721Metadata`. Note that the function outputs `IERC165`, though it is not directly inherited.
diff --git a/API/contract/contract.call_graph.md b/API/contract/contract.call_graph.md
deleted file mode 100644
index 9349699c..00000000
--- a/API/contract/contract.call_graph.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contract.call\_graph()
-
-## Description
-
-Returns call graph of the contract.
-
-## Return type
-
-[CallGraph](../callgraph/)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(50, 50)
-
- names = []
- for contract in contracts:
- call_graph = contract.call_graph()
-
- nodes = call_graph.name_prefix("min")
-
- for node in nodes:
- names.append(node.function_name())
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "mint",
- "mint",
- "minVotingPeriod",
- "mint"
- ]
-}
-```
diff --git a/API/contract/contract.chain_id.md b/API/contract/contract.chain_id.md
deleted file mode 100644
index 0062a823..00000000
--- a/API/contract/contract.chain_id.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contract.chain\_id()
-
-## Description
-
-Returns the ID of the blockchain where a Contract was deployed.
-
-## Return type
-
-int (e.g., 1 for Ethereum)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_name("ERC721").exec(5)
-
- chain_ids = []
- for contract in contracts:
- chain_ids.append(contract.chain_id())
-
- return [{"chain_ids": chain_ids}]
-```
-
-## Example output
-
-```json
-{
- "chain_ids": [
- 69,
- 69,
- 69,
- 69,
- 69
- ]
-}
-```
diff --git a/API/contract/contract.constructor.md b/API/contract/contract.constructor.md
deleted file mode 100644
index 6fa7701a..00000000
--- a/API/contract/contract.constructor.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contract.constructor()
-
-## Description
-
-It returns the constructor function of a Contract, if exists.
-
-## Return type
-
-([NoneObject](../noneobject/) | [Function](../function/))
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(10)
-
- constructors = []
- for contract in contracts:
- constructor = contract.constructor()
-
- if not isinstance(constructor, NoneObject):
- constructors.append(constructor)
-
- return constructors
-```
-
-## Example output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "constructor() {\n _setOwner(_msgSender());\n }"
-}
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "constructor(string memory name_,string memory symbol_) {\n _name = name_;\n _symbol = symbol_;\n }"
-}
-```
diff --git a/API/contract/contract.derived_contracts.md b/API/contract/contract.derived_contracts.md
deleted file mode 100644
index b8c8bfdc..00000000
--- a/API/contract/contract.derived_contracts.md
+++ /dev/null
@@ -1,45 +0,0 @@
-# Contract.derived\_contracts()
-
-## Description
-
-Returns the contracts which were derived from a Contract.
-
-## Return type
-
-[Contracts](../contracts/)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(1)
-
- names = []
- for contract in contracts:
- derived_contracts = contract.derived_contracts().exec()
-
- for contract in derived_contracts:
- names.append(contract.name)
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "ERC721",
- "ERC721URIStorage",
- "LTP",
- "Ownable"
- ]
-}
-{
- "print_output": [
- "Context"
- ]
-}
-```
diff --git a/API/contract/contract.dump_into_json.md b/API/contract/contract.dump_into_json.md
deleted file mode 100644
index a6c9e0b4..00000000
--- a/API/contract/contract.dump_into_json.md
+++ /dev/null
@@ -1,39 +0,0 @@
-# Contract.dump\_into\_json()
-
-## Description
-
-It returns the internal technical information about a Contract.
-
-## Return type
-
-```json
-{
- "name": string
- "relative_filepath": string
-}
-```
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(1)
-
- jsons = []
- for contract in contracts:
- json = contract.dump_into_json()
- jsons.append(json)
-
- return jsons
-```
-
-## Example output
-
-```json
-{
- "name": "Context",
- "relative_filepath": "../smart-contract-sanctuary-ethereum/contracts/kovan/79/798AcB51D8FBc97328835eE2027047a8B54533AD_LTP.sol"
-}
-```
diff --git a/API/contract/contract.enums.md b/API/contract/contract.enums.md
deleted file mode 100644
index eae502e4..00000000
--- a/API/contract/contract.enums.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contract.enums()
-
-## Description
-
-The function returns all the enums of a Contract.
-
-## Return type
-
-List\[Enum]
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(100)
-
- names = []
- for contract in contracts:
- enums = contract.enums()
-
- for enum in enums:
- names.append(enum.name)
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "Upgradability",
- "Tranches"
- ]
-}
-```
diff --git a/API/contract/contract.errors.md b/API/contract/contract.errors.md
deleted file mode 100644
index 774daead..00000000
--- a/API/contract/contract.errors.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contract.errors()
-
-## Description
-
-The function returns all the errors of a Contract.
-
-## Return type
-
-List\[Error]
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(5, 150)
-
- names = []
- for contract in contracts:
- errors = contract.errors()
-
- for error in errors:
- names.append(error.name)
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "InvalidArgument",
- "FailedToSendEther"
- ]
-}
-```
diff --git a/API/contract/contract.events.md b/API/contract/contract.events.md
deleted file mode 100644
index eaf80a4b..00000000
--- a/API/contract/contract.events.md
+++ /dev/null
@@ -1,40 +0,0 @@
-# Contract.events()
-
-## Description
-
-The function returns all the events of a Contract.
-
-## Return type
-
-List\[[Event](../event/)]
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(5)
-
- names = []
- for contract in contracts:
- events = contract.events()
-
- for event in events:
- names.append(event.name)
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "OwnershipTransferred",
- "Transfer",
- "Approval",
- "ApprovalForAll"
- ]
-}
-```
diff --git a/API/contract/contract.functions.md b/API/contract/contract.functions.md
deleted file mode 100644
index deec72db..00000000
--- a/API/contract/contract.functions.md
+++ /dev/null
@@ -1,43 +0,0 @@
-# Contract.functions()
-
-## Description
-
-Returns all the functions of a Contract.
-
-## Return type
-
-[Functions](../functions/)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(1, 1)
-
- names = []
- for contract in contracts:
- functions = contract.functions().exec()
-
- for function in functions:
- names.append(function.name())
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "_msgSender",
- "_msgData",
- "constructor",
- "owner",
- "renounceOwnership",
- "transferOwnership",
- "_setOwner"
- ]
-}
-```
diff --git a/API/contract/contract.get_contracts_from_same_src_file.md b/API/contract/contract.get_contracts_from_same_src_file.md
deleted file mode 100644
index 7bb68f99..00000000
--- a/API/contract/contract.get_contracts_from_same_src_file.md
+++ /dev/null
@@ -1,81 +0,0 @@
-# Contract.get\_contracts\_from\_same\_src\_file()
-
-## Description
-
-Returns a collection of lists, with each list representing contracts originating from the same document.
-
-## Return type
-
-List\[List\[[Contract](./)]]
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(1)
-
- first_file_names = []
- second_file_names = []
- for contract in contracts:
- same_files_contracts = contract.get_contracts_from_same_src_file()
- first_file_contracts = same_files_contracts[0]
- second_file_contracts = same_files_contracts[1]
-
- for contract in first_file_contracts:
- first_file_names.append(contract.name)
-
- for contract in second_file_contracts:
- second_file_names.append(contract.name)
-
- return [{"first_file_names": first_file_names, "second_file_names": second_file_names}]
-```
-
-## Example output
-
-```json
-{
- "first_file_names": [
- "Context",
- "Ownable",
- "IERC165",
- "ERC165",
- "IERC721",
- "IERC721Metadata",
- "ERC721",
- "ERC721URIStorage",
- "ISuperApp",
- "SuperAppBase",
- "LTP",
- "ISuperAgreement",
- "IConstantFlowAgreementV1",
- "IERC721Receiver",
- "Address",
- "Strings",
- "ISuperfluid",
- "ISuperfluidGovernance",
- "ISuperfluidToken",
- "TokenInfo",
- "IERC20",
- "IERC777",
- "ISuperToken",
- "ISuperTokenFactory",
- "SuperAppDefinitions",
- "ContextDefinitions",
- "BatchOperation",
- "SuperfluidGovernanceConfigs",
- "ERC20WithTokenInfo"
- ],
- "second_file_names": [
- "IERC20",
- "IERC20Metadata",
- "Context",
- "ERC20",
- "Ownable",
- "INodeERC1155",
- "ICorkToken",
- "CorkToken"
- ]
-}
-```
diff --git a/API/contract/contract.id_key.md b/API/contract/contract.id_key.md
deleted file mode 100644
index 0f073b30..00000000
--- a/API/contract/contract.id_key.md
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contract.id\_key()
-
-## Description
-
-Returns the internal database id of a Contract.
-
-## Return type
-
-str (e.g., `"contracts/0f8238c5710c12f0046179755d932ad8"`)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(10)
-
- ids = []
- for contract in contracts:
- id = contract.id_key()
- ids.append(id)
-
- return [{"ids": ids}]
-```
-
-## Example output
-
-```json
-{
- "ids": [
- "contracts/3caf682820e2d2f350926c66496dd80a",
- "contracts/daad7bef47df9ac01c6cc3422ff4ebee",
- "contracts/0f8238c5710c12f0046179755d932ad8",
- "contracts/a970a857180935b6af57cf9f3a133dfb",
- "contracts/e61ec71ef5cc345e7f44714c6139349a",
- "contracts/2fc4420c9645e974eeb9563c6f1e2c0e",
- "contracts/0102f35300168a508d759b6bbc319333",
- "contracts/c7f7215abb1ce81a77e28b320ab38636",
- "contracts/1c880e636e52dcfab06b750e8961ae13",
- "contracts/fd81371a5e8c15aec848035ec5d0528e"
- ]
-}
-```
diff --git a/API/contract/contract.is_lib.md b/API/contract/contract.is_lib.md
deleted file mode 100644
index 6ad6cb04..00000000
--- a/API/contract/contract.is_lib.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Contract.is\_lib()
-
-## Description
-
-Returns true if the Contract is a library, false otherwise.
-
-## Return type
-
-bool
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(25)
-
- libs = []
- for contract in contracts:
- if contract.is_lib():
- libs.append(contract)
-
- return libs
-```
-
-## Example output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Address"
-}
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Strings"
-}
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "SuperAppDefinitions"
-}
-```
diff --git a/API/contract/contract.is_main.md b/API/contract/contract.is_main.md
deleted file mode 100644
index 25396f9e..00000000
--- a/API/contract/contract.is_main.md
+++ /dev/null
@@ -1,34 +0,0 @@
-# Contract.is\_main()
-
-## Description
-
-Returns true if the Contract is main, false otherwise.
-
-## Return type
-
-bool
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(10, 10)
-
- mains = []
- for contract in contracts:
- if contract.is_main():
- mains.append(contract)
-
- return mains
-```
-
-## Example output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP"
-}
-```
diff --git a/API/contract/contract.modifiers.md b/API/contract/contract.modifiers.md
deleted file mode 100644
index 13832391..00000000
--- a/API/contract/contract.modifiers.md
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contract.modifiers()
-
-## Description
-
-Returns all the modifiers of a Contract.
-
-## Return type
-
-[Modifiers](../modifiers/)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(10, 10)
-
- result = []
- for contract in contracts:
- modifiers = contract.modifiers().exec()
-
- for modifier in modifiers:
- result.append(modifier)
-
- return result
-```
-
-## Example output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyOwner() {\n require(owner() == _msgSender(),\"Ownable: caller is not the owner\");\n _;\n }"
-}
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyMinter() {\n require(msg.sender == minter,'Sender is not the minter');\n _;\n }"
-}
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_modifier": "modifier onlyMinterOrOwner() {\n require( (msg.sender == minter) || (msg.sender == owner()),'Sender is not the minter nor owner');\n _;\n }"
-}
-```
diff --git a/API/contract/contract.name.md b/API/contract/contract.name.md
deleted file mode 100644
index 043a681c..00000000
--- a/API/contract/contract.name.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# Contract.name
-
-## Description
-
-Returns the name of a Contract.
-
-## Return type
-
-str (e.g., `"ERC721"`, `"PaymentSplitter"`)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(5)
-
- names = []
- for contract in contracts:
- names.append(contract.name)
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "Context",
- "Ownable",
- "IERC165",
- "ERC165",
- "IERC721"
- ]
-}
-```
diff --git a/API/contract/contract.parent_contracts.md b/API/contract/contract.parent_contracts.md
deleted file mode 100644
index 1deb6b27..00000000
--- a/API/contract/contract.parent_contracts.md
+++ /dev/null
@@ -1,44 +0,0 @@
-# Contract.parent\_contracts()
-
-## Description
-
-Returns Contracts object for the contracts from which the contract was inherited directly.
-
-## Return type
-
-[Contracts](../contracts/)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(1, 1)
-
- names = []
- for contract in contracts:
- print(contract.name)
-
- parent_contracts = contract.parent_contracts().exec()
-
- for contract in parent_contracts:
- names.append(contract.name)
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "Context"
- ]
-}
-{
- "print_output": [
- "Ownable"
- ]
-}
-```
diff --git a/API/contract/contract.pragmas.md b/API/contract/contract.pragmas.md
deleted file mode 100644
index 3aba7e1a..00000000
--- a/API/contract/contract.pragmas.md
+++ /dev/null
@@ -1,238 +0,0 @@
-# Contract.pragmas()
-
-## Description
-
-Returns the list of all pragmas of the contract.
-
-## Return type
-
-List\[Tuple\[str, str]]
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(1, 100)
-
- result = []
- for contract in contracts:
- pragmas = contract.pragmas()
- result.append(pragmas[0])
-
- return result
-```
-
-## Example output
-
-```json
-[
- "../smart-contract-sanctuary-ethereum/contracts/kovan/40/400a7e0960b63d3288591ee0e6B6D9578eAFFe23_ChainlinkInceptionPriceFeed.sol",
- [
- [
- "experimental",
- "ABIEncoderV2"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- ">=",
- "0.6",
- ".0",
- "<",
- "0.8",
- ".0"
- ],
- [
- "solidity",
- ">=",
- "0.6",
- ".0",
- "<",
- "0.8",
- ".0"
- ],
- [
- "solidity",
- ">=",
- "0.4",
- ".24",
- "<",
- "0.8",
- ".0"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- ">=",
- "0.6",
- ".0",
- "<",
- "0.8",
- ".0"
- ],
- [
- "solidity",
- ">=",
- "0.6",
- ".0",
- "<",
- "0.8",
- ".0"
- ],
- [
- "solidity",
- ">=",
- "0.6",
- ".2",
- "<",
- "0.8",
- ".0"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ],
- [
- "solidity",
- "0.6",
- ".12"
- ]
- ]
-]
-```
diff --git a/API/contract/contract.source_code.md b/API/contract/contract.source_code.md
deleted file mode 100644
index d33c9536..00000000
--- a/API/contract/contract.source_code.md
+++ /dev/null
@@ -1,36 +0,0 @@
-# Contract.source\_code()
-
-## Description
-
-Returns the source code of the contract.
-
-## Return type
-
-str
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(2)
-
- codes = []
- for contract in contracts:
- code = contract.source_code()
- codes.append(code)
-
- return [{"codes": codes}]
-```
-
-## Example output
-
-```json
-{
- "codes": [
- "abstract contract Context {\n function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }\n\n function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }\n}",
- "abstract contract Ownable is Context {\n address private _owner;\n\n event OwnershipTransferred(address indexed previousOwner,address indexed newOwner);\n\n \n\n\n constructor() {\n _setOwner(_msgSender());\n }\n\n \n\n\n function owner() public view virtual returns (address) {\n return _owner;\n }\n\n \n\n\n modifier onlyOwner() {\n require(owner() == _msgSender(),\"Ownable: caller is not the owner\");\n _;\n }\n\n \n\n\n\n\n\n\n function renounceOwnership() public virtual onlyOwner {\n _setOwner(address(0));\n }\n\n \n\n\n\n function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0),\"Ownable: new owner is the zero address\");\n _setOwner(newOwner);\n }\n\n function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }\n}"
- ]
-}
-```
diff --git a/API/contract/contract.structs.md b/API/contract/contract.structs.md
deleted file mode 100644
index 2b151e1b..00000000
--- a/API/contract/contract.structs.md
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contract.structs()
-
-## Description
-
-Returns the list of all structs of the contract.
-
-## Return type
-
-List\[Struct]
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(50, 50)
-
- names = []
- for contract in contracts:
- structs = contract.structs()
-
- for struct in structs:
- names.append(struct.name)
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "TData",
- "TokenInfo",
- "MintParams",
- "PoolInfo",
- "TrancheInfo",
- "PoolSlice",
- "SliceInfo",
- "ApplyResult",
- "CollateralConfig",
- "Vault",
- "CollateralConfig"
- ]
-}
-```
diff --git a/API/contract/contract.variables.md b/API/contract/contract.variables.md
deleted file mode 100644
index 39cf6d4d..00000000
--- a/API/contract/contract.variables.md
+++ /dev/null
@@ -1,47 +0,0 @@
-# Contract.variables()
-
-## Description
-
-Returns the list of all variables of the contract.
-
-## Return type
-
-[Variables](../variables/)
-
-## Example query
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(10)
-
- names = []
- for contract in contracts:
- variables = contract.variables().exec()
-
- for variable in variables:
- names.append(variable.name())
-
- return [{"names": names}]
-```
-
-## Example output
-
-```json
-{
- "names": [
- "_owner",
- "_name",
- "_symbol",
- "_owners",
- "_balances",
- "_tokenApprovals",
- "_operatorApprovals",
- "_tokenURIs",
- "owner",
- "paused",
- "canPause"
- ]
-}
-```
diff --git a/API/contracts/README.md b/API/contracts/README.md
deleted file mode 100644
index c77a3080..00000000
--- a/API/contracts/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Contracts
-
diff --git a/API/contracts/contracts.contracts.md b/API/contracts/contracts.contracts.md
deleted file mode 100644
index 13abeade..00000000
--- a/API/contracts/contracts.contracts.md
+++ /dev/null
@@ -1,25 +0,0 @@
----
-description: Returns a list of Contract objects.
----
-
-# Contracts.contracts
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(1)
-
- return contracts
-```
-
-Output:
-
-```python
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context"
-}
-```
diff --git a/API/contracts/contracts.exec.md b/API/contracts/contracts.exec.md
deleted file mode 100644
index 92cae2e7..00000000
--- a/API/contracts/contracts.exec.md
+++ /dev/null
@@ -1,29 +0,0 @@
----
-description: Executes the formed query and returns the list of Contract objects.
----
-
-# Contracts.exec()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().exec(2)
-
- return contracts
-```
-
-Output:
-
-```python
-"root":{2 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-}
-"root":{2 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-}
-```
diff --git a/API/contracts/contracts.functions.md b/API/contracts/contracts.functions.md
deleted file mode 100644
index f8f38c7e..00000000
--- a/API/contracts/contracts.functions.md
+++ /dev/null
@@ -1,66 +0,0 @@
----
-description: Returns the Functions object for the functions of the contracts.
----
-
-# Contracts.functions()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().functions().exec(5)
-
- return contracts
-```
-
-Output:
-
-```python
-"root":{3 items
-"contract":string"0x82e3077da0d038197b810d0620aed3e513164694"
-"contract_name":string"Voting"
-"sol_function":solidity
-function isWhitelisted(address addr) public view returns (bool) {
- return whitelist[addr]!=0;
- }
-}
-"root":{3 items
-"contract":string"0x82e3077da0d038197b810d0620aed3e513164694"
-"contract_name":string"Voting"
-"sol_function":solidity
-function whitelistAddress(address addr) public onlyOwner{
- require(!isWhitelisted(addr),"Already whitelisted");
- counter++;
- _voters++;
- whitelist[addr]=counter;
- }
-}
-"root":{3 items
-"contract":string"0x82e3077da0d038197b810d0620aed3e513164694"
-"contract_name":string"Voting"
-"sol_function":solidity
-function removeAddress(address addr) public onlyOwner{
- require(isWhitelisted(addr),"Not whitelisted");
- _voters--;
- whitelist[addr] = 0;
- }
-}
-"root":{3 items
-"contract":string"0x82e3077da0d038197b810d0620aed3e513164694"
-"contract_name":string"Voting"
-"sol_function":solidity
-function numVoters() public view returns (uint){
- return _voters;
- }
-}
-"root":{3 items
-"contract":string"0x82e3077da0d038197b810d0620aed3e513164694"
-"contract_name":string"Voting"
-"sol_function":solidity
-function addProposer(address addr) public onlyOwner{
- isProposer[addr]=true;
- }
-}
-```
diff --git a/API/contracts/contracts.interfaces.md b/API/contracts/contracts.interfaces.md
deleted file mode 100644
index 156779b8..00000000
--- a/API/contracts/contracts.interfaces.md
+++ /dev/null
@@ -1,30 +0,0 @@
----
-description: Adds a filter to the current query that gets contracts that are interfaces.
----
-
-# Contracts.interfaces()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().interfaces().exec(1)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x798AcB51D8FBc97328835eE2027047a8B54533AD"
- ]
-}
-```
diff --git a/API/contracts/contracts.mains.md b/API/contracts/contracts.mains.md
deleted file mode 100644
index 167b067b..00000000
--- a/API/contracts/contracts.mains.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that are main
----
-
-# Contracts.mains()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().mains().exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "0x854f8aa8fc54cc57e9ab86318d498511342ff9d8",
- "0x561ae3768ee95987b355c287f985f2838f01e632",
- "0x27A05e7a40F2d980F8853e94c3cE54C70e68527D"
- ]
-}
-```
diff --git a/API/contracts/contracts.name_prefix.md b/API/contracts/contracts.name_prefix.md
deleted file mode 100644
index 8adfbde7..00000000
--- a/API/contracts/contracts.name_prefix.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts whose names have the given prefix.
----
-
-# Contracts.name\_prefix()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().name_prefix("test").exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0xa66ab394d86d5b6af4815a570513b1c813c9152c",
- "0xb67e972bff8df12bf76c45d322bdee31d5964223",
- "0xcc6a7d2a7e23f39dbea3718ebdc0feb68959ac68",
- "0x37aB40366C27AF9F95d36Dd7c4eEFa4EcB2D9e50",
- "0x97147E71a7a49F1f4dB4fA5b68316c0eC327B792"
- ]
-}
-```
diff --git a/API/contracts/contracts.name_regex.md b/API/contracts/contracts.name_regex.md
deleted file mode 100644
index 661d8658..00000000
--- a/API/contracts/contracts.name_regex.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts whose names match the given regex.
----
-
-# Contracts.name\_regex()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().name_regex('^pool.*').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x94a17586A22ddccBBBe3e618184DecD15BB227fA",
- "0x94a17586A22ddccBBBe3e618184DecD15BB227fA",
- "0x94a17586A22ddccBBBe3e618184DecD15BB227fA",
- "0x8df9084935c4895d854b51cfc36cc9bb44114a7e",
- "0xfff78048519be8561f500f69e07a6eab807b4a11"
- ]
-}
-```
diff --git a/API/contracts/contracts.name_suffix.md b/API/contracts/contracts.name_suffix.md
deleted file mode 100644
index f2df7058..00000000
--- a/API/contracts/contracts.name_suffix.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: Adds a filter to get contracts that names have the given suffix.
----
-
-# Contracts.name\_suffix()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().name_suffix("pool").exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0xd73969Ba8aB79Fc3b4c70616671F65E5cA84C741",
- "0xCbFD6c51FbD6c1EA233CdCE42e5233Cc0CB6b833",
- "0xCbFD6c51FbD6c1EA233CdCE42e5233Cc0CB6b833",
- "0x1d346f3b23ad568608bc301fe9707c5320ce4c64"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_compiler_range.md b/API/contracts/contracts.with_compiler_range.md
deleted file mode 100644
index ef74b3ab..00000000
--- a/API/contracts/contracts.with_compiler_range.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: >-
- Adds a filter to get contracts whose compilation version is in the given
- range.
----
-
-# Contracts.with\_compiler\_range()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_compiler_range("0.4.0", "0.8.18").exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x6f1b14a08410c36ea8a3f3cd367a33f89f75b169",
- "0x6f1b14a08410c36ea8a3f3cd367a33f89f75b169",
- "0x5760Ed11eb738e0Da57ADFAa37Ce7808Bcc8738c",
- "0x52eb5c21391aac589f316667d03bd50bafa6d509",
- "0x52eb5c21391aac589f316667d03bd50bafa6d509"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_compiler_range_not.md b/API/contracts/contracts.with_compiler_range_not.md
deleted file mode 100644
index 98bb7614..00000000
--- a/API/contracts/contracts.with_compiler_range_not.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: >-
- Adds a filter to get contracts whose compilation version isn't in the given
- range.
----
-
-# Contracts.with\_compiler\_range\_not()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_compiler_range_not("0.8.0", "0.8.20").exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23",
- "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23",
- "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23",
- "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23",
- "0x400a7e0960b63d3288591ee0e6B6D9578eAFFe23"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_error_name.md b/API/contracts/contracts.with_error_name.md
deleted file mode 100644
index c661f957..00000000
--- a/API/contracts/contracts.with_error_name.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that have an error with the given name.
----
-
-# Contracts.with\_error\_name()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_error_name("Invalid").exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x97e121ecdcf554f60857e5dc39ed1ea14337d506",
- "0x97e121ecdcf554f60857e5dc39ed1ea14337d506",
- "0x87B80d07efCC64F19Bf873Dc87A99c85E591036b",
- "0x9eb83e11c9a6a15a9aee8f65cc69d205dc3f3fa5",
- "0xee16846aee123e32cf3baa9ee17121e92abc174c"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_error_prefix.md b/API/contracts/contracts.with_error_prefix.md
deleted file mode 100644
index 80f93e69..00000000
--- a/API/contracts/contracts.with_error_prefix.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: >-
- Adds a filter to get contracts that have an error whose name has the given
- prefix.
----
-
-# Contracts.with\_error\_prefix()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_error_prefix("_er").exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0xbe90c8e5b01669188978D6CF6d39324ab5410ccf",
- "0x5985B9a914bCd6A46d72690Df78c1640064c499e",
- "0x5985B9a914bCd6A46d72690Df78c1640064c499e",
- "0x5985B9a914bCd6A46d72690Df78c1640064c499e",
- "0x5985B9a914bCd6A46d72690Df78c1640064c499e"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_error_regex.md b/API/contracts/contracts.with_error_regex.md
deleted file mode 100644
index 19349e09..00000000
--- a/API/contracts/contracts.with_error_regex.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: >-
- Adds a filter to get contracts that have an error whose name matches the given
- regex.
----
-
-# Contracts.with\_error\_regex()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_error_regex('^Err.*').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0xd6c4884106ff00e231f7c1626c18700b2cb98456",
- "0xb795987CF22936fBc2cA945FFEEAa49894EAcF84",
- "0xb795987CF22936fBc2cA945FFEEAa49894EAcF84",
- "0xb795987CF22936fBc2cA945FFEEAa49894EAcF84",
- "0xb795987CF22936fBc2cA945FFEEAa49894EAcF84"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_error_signature.md b/API/contracts/contracts.with_error_signature.md
deleted file mode 100644
index ddf8ff45..00000000
--- a/API/contracts/contracts.with_error_signature.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that have an error with the given signature.
----
-
-# Contracts.with\_error\_signature()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_error_signature('Unauthorized()').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x4aaa25B1972Bb72266E67F7E146b9EBED63490Ad",
- "0x97e121ecdcf554f60857e5dc39ed1ea14337d506",
- "0x97e121ecdcf554f60857e5dc39ed1ea14337d506",
- "0x7c5eF576dd7fd87C639b330dA4C854EA05ABe12E",
- "0x9E87F43Dec627E6d55211b0d66686eBe5B14B65B"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_error_suffix.md b/API/contracts/contracts.with_error_suffix.md
deleted file mode 100644
index fe4aad1b..00000000
--- a/API/contracts/contracts.with_error_suffix.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: >-
- Adds a filter to get contracts that have an error whose name has the given
- suffix.
----
-
-# Contracts.with\_error\_suffix()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_error_suffix('Unauthorized').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x4aaa25B1972Bb72266E67F7E146b9EBED63490Ad",
- "0x97e121ecdcf554f60857e5dc39ed1ea14337d506",
- "0x97e121ecdcf554f60857e5dc39ed1ea14337d506",
- "0x7c5eF576dd7fd87C639b330dA4C854EA05ABe12E",
- "0x9E87F43Dec627E6d55211b0d66686eBe5B14B65B"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_event_name.md b/API/contracts/contracts.with_event_name.md
deleted file mode 100644
index afbccc22..00000000
--- a/API/contracts/contracts.with_event_name.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that have an event with the given name.
----
-
-# Contracts.with\_event\_name()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_event_name('transfer').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x5f3d950617cfb119bc1e6867594e63ca86aedc5b",
- "0xece7ff5350949a396d02963459e8bd088fff80db",
- "0x76adb19cc6b2565f586c78e945a886f9b954861f",
- "0x1d0105bbb80b2d05789c668995762d02fd5681e1",
- "0xAe7068A433D37d3416000b0733A5b5e6Fac7Bf69"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_event_prefix.md b/API/contracts/contracts.with_event_prefix.md
deleted file mode 100644
index 20668f89..00000000
--- a/API/contracts/contracts.with_event_prefix.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: >-
- Adds a filter to get contracts that have an event whose name has the given
- prefix.
----
-
-# Contracts.with\_event\_prefix()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_event_prefix('user').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x84efEf0c34698d29014a1d7bcEBcBBCcb91b2865",
- "0xdd4e308c42ebc152c53172ae70e0ab1aee95d67d",
- "0xdd4e308c42ebc152c53172ae70e0ab1aee95d67d",
- "0xdd4e308c42ebc152c53172ae70e0ab1aee95d67d",
- "0xdd4e308c42ebc152c53172ae70e0ab1aee95d67d"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_event_regex.md b/API/contracts/contracts.with_event_regex.md
deleted file mode 100644
index 9599a01f..00000000
--- a/API/contracts/contracts.with_event_regex.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: >-
- Adds a filter to get contracts that have an event whose name matches the given
- regex.
----
-
-# Contracts.with\_event\_regex()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_event_regex('^Update.*').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0xeB3D8DBFa30A83A80DcFd5F6317426a6ce41CEE4",
- "0xb2F7E60359438655311e6582dfb2f9EF04CB142C",
- "0xb2F7E60359438655311e6582dfb2f9EF04CB142C",
- "0x7FAfB0571B10757373df3c463C472C39D688711c",
- "0x7e6B034880393a4604175D6867ba25Fa16402E43"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_event_signature.md b/API/contracts/contracts.with_event_signature.md
deleted file mode 100644
index 0dcc1978..00000000
--- a/API/contracts/contracts.with_event_signature.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that have an event with the given signature.
----
-
-# Contracts.with\_event\_signature()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_event_signature('Deposit()').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0xfb1FED416758326CdeBE673c0E12c287C1e91198",
- "0x7bc20d6137750189dd6cf5e92d92ea74786f520f",
- "0x9a02B92718844E2D285FC278529653D499d29827",
- "0x538378bbc847b297ec125600326b80dfcbd6ce08",
- "0x2c4a10070595b386503f7165d6d6d0d762275e73"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_event_suffix.md b/API/contracts/contracts.with_event_suffix.md
deleted file mode 100644
index 5c0cdad2..00000000
--- a/API/contracts/contracts.with_event_suffix.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: >-
- Adds a filter to get contracts that have an event whose name has the given
- suffix.
----
-
-# Contracts.with\_event\_suffix()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_event_suffix('debt').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0x1A1288c4eF9beE001177fEc4d0Fc3Ed2cdF23A3a",
- "0x069B70079fAC1ffC1A6F3d3c4724d0f5dA03D953",
- "0x8eAA1477dfC21671dC42B9F13ACe4F54616882b0",
- "0x070f7ee9dfB8dc4E14356799D06DdA50518efb3C",
- "0x9dE22166620D7e1984462582f12eeF059fC9a673"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_function_name.md b/API/contracts/contracts.with_function_name.md
deleted file mode 100644
index b0807d43..00000000
--- a/API/contracts/contracts.with_function_name.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that have a function with the given name.
----
-
-# Contracts.with\_function\_name()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_function_name('setAdmin').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0xdD1fdeE333377b490e63e8090Ac80E4BC6Aa0965",
- "0xb5F03971509F2Ddb0a9D5Fd5c147D8FE630a6886",
- "0x912A5C85335b664cD6D08B55b94ACF01bb878FA6",
- "0xbb1cae40e6d872885392657c16701bb1435c82c4",
- "0x97Ff2B98069A255537b9f3b44A991236895f3401"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_function_name_not.md b/API/contracts/contracts.with_function_name_not.md
deleted file mode 100644
index 3e6e51b6..00000000
--- a/API/contracts/contracts.with_function_name_not.md
+++ /dev/null
@@ -1,43 +0,0 @@
----
-description: >-
- Adds a filter to get contracts that don't have any function with the given
- name.
----
-
-# Contracts.with\_function\_name\_not()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_function_name_not('transfer').exec(5)
-
- return contracts
-```
-
-Output:
-
-```python
-"root":{2 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-}
-"root":{2 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-}
-"root":{2 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"IERC165"
-}
-"root":{2 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC165"
-}
-"root":{2 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"IERC721"
-}
-```
diff --git a/API/contracts/contracts.with_ids.md b/API/contracts/contracts.with_ids.md
deleted file mode 100644
index 17804f58..00000000
--- a/API/contracts/contracts.with_ids.md
+++ /dev/null
@@ -1,11 +0,0 @@
----
-description: Adds a filter to get contracts having ids from the given list.
----
-
-# Contracts.with\_ids()
-
-Input:
-
-
-
-Output:
diff --git a/API/contracts/contracts.with_info.md b/API/contracts/contracts.with_info.md
deleted file mode 100644
index b1e12558..00000000
--- a/API/contracts/contracts.with_info.md
+++ /dev/null
@@ -1,13 +0,0 @@
----
-description: Returns Contracts object with specified info.
----
-
-# Contracts.with\_info()
-
-Input:
-
-```python
-```
-
-Output:
-
diff --git a/API/contracts/contracts.with_name.md b/API/contracts/contracts.with_name.md
deleted file mode 100644
index e4718923..00000000
--- a/API/contracts/contracts.with_name.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts with the given name.
----
-
-# Contracts.with\_name()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_name("Account").exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```
-{
- "addresses": [
- "0x3746F68ed3299948126a32E85b30c10C7F78109C",
- "0x546728A95FeDC9E5b98F27564873226a8f536D79",
- "0x2B2C387E2aAcD3bcFC77505aBFfd82DF172dE589",
- "0x4a483d1c3b7712daa0e6c1eeee979ae3e25d42d2",
- "0x2D8Be68bF59E6529466df26b311231E1BeaEB037"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_name_not.md b/API/contracts/contracts.with_name_not.md
deleted file mode 100644
index 7df933e7..00000000
--- a/API/contracts/contracts.with_name_not.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that don't have the given name.
----
-
-# Contracts.with\_name\_not()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_name_not("Account").exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```
-{
- "addresses": [
- "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "0x798AcB51D8FBc97328835eE2027047a8B54533AD"
- ]
-```
-
diff --git a/API/contracts/contracts.with_struct_field_name.md b/API/contracts/contracts.with_struct_field_name.md
deleted file mode 100644
index d5df195a..00000000
--- a/API/contracts/contracts.with_struct_field_name.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that have a struct with the given field name.
----
-
-# Contracts.with\_struct\_field\_name()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_struct_field_name('balance').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output (\~80 secs):
-
-```python
-{
- "addresses": [
- "0xe90baa4A5fD4fE25443d27e6E2883350a0E67855",
- "0x139D12963897129D48C99402Cc481e8C0E8FD0BC",
- "0x139D12963897129D48C99402Cc481e8C0E8FD0BC",
- "0xea10031Bb69b1b64B19447C7a956f9a951183fb5",
- "0x0CB65c3B85F730E08C31bdf67a948f64847EB7CA"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_struct_field_type.md b/API/contracts/contracts.with_struct_field_type.md
deleted file mode 100644
index ef4184be..00000000
--- a/API/contracts/contracts.with_struct_field_type.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that have a struct with the given field type.
----
-
-# Contracts.with\_struct\_field\_type()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_struct_field_type('bytes32').exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output(Takes a while \~30 secs):
-
-```python
-{
- "addresses": [
- "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "0xe90baa4A5fD4fE25443d27e6E2883350a0E67855",
- "0x2d8bE62BF76F5c6962E0E44e93374786F329260c",
- "0x1C3517AFb608610DB403401B7C85929774c3cdd7",
- "0x69fEe260917b62C46EC95D7d2FE59DC827934cdD"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_struct_fields_count.md b/API/contracts/contracts.with_struct_fields_count.md
deleted file mode 100644
index ee3689a6..00000000
--- a/API/contracts/contracts.with_struct_fields_count.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: Adds a filter to get contracts that have a struct with the given fields count.
----
-
-# Contracts.with\_struct\_fields\_count()
-
-Input:
-
-```python
-from glider import *
-
-def query():
- contracts = Contracts().with_struct_fields_count(7).exec(5)
-
- addresses = []
- for contract in contracts:
- addresses.append(contract.address())
-
- return [{"addresses": addresses}]
-```
-
-Output:
-
-```python
-{
- "addresses": [
- "0xE1e65E4be161950eb18185703cFCacB35c4c65B3",
- "0xe90baa4A5fD4fE25443d27e6E2883350a0E67855",
- "0xb51Da721B77Db063B02b79D7e79558b9C2e34Ea6",
- "0x2307316e1846CaBf740f9bea0F8Aa0E4cb82b89c",
- "0x139D12963897129D48C99402Cc481e8C0E8FD0BC"
- ]
-}
-```
diff --git a/API/contracts/contracts.with_struct_name.md b/API/contracts/contracts.with_struct_name.md
deleted file mode 100644
index 9423851b..00000000
--- a/API/contracts/contracts.with_struct_name.md
+++ /dev/null
@@ -1,44 +0,0 @@
----
-description: Adds a filter to get contracts that have a struct with the given name.
----
-
-# Contracts.with\_struct\_name()
-
-Input:
-
-```python
-from glider import *
-
-def query():
-
- contracts = Contracts().with_struct_name("User").exec(100)
-
- # Return the first five functions
- return contracts[0:5]
-```
-
-Output:
-
-```python
-"root":{2 items
-"contract":string"0x34fc971063aa11e570929427c26479d7b8dd7dd1"
-"contract_name":string"MUSUBIV3"
-}
-"root":{2 items
-"contract":string"0xb3c21C93f3cB62bb2d34cfF51698149ceD83A0b0"
-"contract_name":string"Subscribe"
-}
-"root":{2 items
-"contract":string"0x9EbE005953d579a1AcAE36ee8054AfD48e9A1FB2"
-"contract_name":string"TaxVendorPol"
-}
-"root":{2 items
-"contract":string"0xdB1B2cCdca2142a6297994101E83Da279F6c20dD"
-"contract_name":string"PolkaBridgeLaunchPad"
-}
-"root":{2 items
-"contract":string"0xc0159c36060C5d5bF60bf26330A01e88f9FdAfFc"
-"contract_name":string"Mobwibsol"
-}
-```
-
diff --git a/API/convertor/README.md b/API/convertor/README.md
deleted file mode 100644
index d4f400c1..00000000
--- a/API/convertor/README.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# Convertor
-
-The aim of this class is to define type conversions. It contains allowed type conversions.
-
-Bases: **object**
-
-{% content-ref url="convertor.add.md" %}
-[convertor.add.md](convertor.add.md)
-{% endcontent-ref %}
-
-{% content-ref url="convertor.can_convert.md" %}
-[convertor.can\_convert.md](convertor.can\_convert.md)
-{% endcontent-ref %}
-
-{% content-ref url="convertor.set_conversions.md" %}
-[convertor.set\_conversions.md](convertor.set\_conversions.md)
-{% endcontent-ref %}
diff --git a/API/convertor/convertor.add.md b/API/convertor/convertor.add.md
deleted file mode 100644
index c9766d04..00000000
--- a/API/convertor/convertor.add.md
+++ /dev/null
@@ -1,41 +0,0 @@
-# Convertor.add()
-
-**`add`**`(`_`from_type: str`_`,`` `_`to_type: str`_`) → None`
-
-Add a new conversion.
-
-```python
-from glider import *
-
-def query():
- # Create a Convertor object
- convertor = Convertor()
-
- # Add a conversion from address to bytes20
- convertor.add("address", "bytes20")
-
- # Fetch a list of functions
- funs = Functions().exec(10)
-
- # Return the functions with at least one argument converitble to bytes20
- # It will be only the argument of type address
- output = []
- for fun in funs:
- args = fun.arguments().with_type_convertible(["bytes20"], convertor)
- if args:
- output.append(fun)
- return output
-```
-
-Output (first result only):
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0),\"Ownable: new owner is the zero address\");\n _setOwner(newOwner);\n }"
-}
-
-```
-
-Note that the order of the arguments is important. In the above example only conversions from `address` to `bytes20` are allowed and not from `bytes20` to `address`.
diff --git a/API/convertor/convertor.can_convert.md b/API/convertor/convertor.can_convert.md
deleted file mode 100644
index 4c10db61..00000000
--- a/API/convertor/convertor.can_convert.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Convertor.can\_convert()
-
-**`can_convert`**`(`_`from_type: str`_`,`` `_`to_type: str`_`) → bool`
-
-Returns true if the first type can be converted to the second.
-
-```python
-from glider import *
-
-def query():
- # Create a Convertor object
- convertor = Convertor()
-
- # Add a conversion from address to bytes20
- convertor.add("address", "bytes20")
-
- # Returns true
- print(convertor.can_convert("address", "bytes20"))
-
- # Returns false as conversion from address to uint160 was not added
- print(convertor.can_convert("address", "uint160"))
-
- return []
-```
-
-Output:
-
-```json
-{
- "print_output": [
- "True",
- "False"
- ]
-}
-```
diff --git a/API/convertor/convertor.set_conversions.md b/API/convertor/convertor.set_conversions.md
deleted file mode 100644
index 6a99eeb2..00000000
--- a/API/convertor/convertor.set_conversions.md
+++ /dev/null
@@ -1,41 +0,0 @@
-# Convertor.set\_conversions()
-
-**`set_conversions`**`(`_`conversions: dict`_`) → None`
-
-Set allowed conversions.
-
-Deletes any previous conversions added to the [Convertor](./).\
-Takes as an argument a dictionary with as keys the convertible types and as values the lists of allowed converted types.
-
-```python
-from glider import *
-
-def query():
- # Create a Convertor object
- convertor = Convertor()
-
- # Set conversion from address to bytes20
- convertor.set_conversions({"bytes20": ["address", "uint160"]})
-
- # Fetch a list of functions
- funs = Functions().exec(10)
-
- # Return the functions with at least one argument converitble to bytes20
- # It will be only the argument of type address
- output = []
- for fun in funs:
- args = fun.arguments().with_type_convertible(["bytes20"], convertor)
- if args:
- output.append(fun)
- return output
-```
-
-Output (first result only):
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0),\"Ownable: new owner is the zero address\");\n _setOwner(newOwner);\n }"
-}
-```
diff --git a/API/endassemblyinstruction.md b/API/endassemblyinstruction.md
deleted file mode 100644
index 93bf96e7..00000000
--- a/API/endassemblyinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# EndAssemblyInstruction
-
diff --git a/API/endifinstruction.md b/API/endifinstruction.md
deleted file mode 100644
index 1976d97d..00000000
--- a/API/endifinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# EndIfInstruction
-
diff --git a/API/endloopinstruction.md b/API/endloopinstruction.md
deleted file mode 100644
index 6a4a734d..00000000
--- a/API/endloopinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# EndLoopInstruction
-
diff --git a/API/entrypointinstruction.md b/API/entrypointinstruction.md
deleted file mode 100644
index 2e884784..00000000
--- a/API/entrypointinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# EntryPointInstruction
-
diff --git a/API/event/README.md b/API/event/README.md
deleted file mode 100644
index 22f9f6a8..00000000
--- a/API/event/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Event
-
diff --git a/API/event/event.arg_list.md b/API/event/event.arg_list.md
deleted file mode 100644
index 6f97926b..00000000
--- a/API/event/event.arg_list.md
+++ /dev/null
@@ -1,37 +0,0 @@
----
-description: Returns arguments' types of the event.
----
-
-# Event.arg\_list()
-
-## Return type
-
-→ List\[str]
-
-## Example
-
-```python
-from glider import *
-def query():
- # Find contracts with an event called "Transfer"
- contracts = Contracts().with_event_name('Transfer').exec(100)
-
- transferEventsArgs = []
- for contract in contracts:
- for event in contract.events():
- if event.name == "Transfer":
- # For each "Transfer" event in every single contract, return its arguments
- transferEventsArgs.append(event.arg_list())
-
- return transferEventsArgs
-```
-
-## Example output
-
-```json
-[
- ["address", "address", "uint256"],
- ["address", "address", "uint256"],
- ...
-]
-```
diff --git a/API/event/event.dump_into_json.md b/API/event/event.dump_into_json.md
deleted file mode 100644
index 06f4521c..00000000
--- a/API/event/event.dump_into_json.md
+++ /dev/null
@@ -1,56 +0,0 @@
----
-description: Returns a serialized JSON object of the event.
----
-
-# Event.dump\_into\_json()
-
-## Return type
-
-→ Dict
-
-## Example
-
-```python
-from glider import *
-def query():
- # Find contracts with an event called "Transfer"
- contracts = Contracts().with_event_name('Transfer').exec(100)
-
- transferEventsObjs = []
- for contract in contracts:
- for event in contract.events():
- if event.name == "Transfer":
- # Return the JSON serialized representation of each "Transfer" event in every single contract
- transferEventsObjs.append(event.dump_into_json())
-
- return transferEventsObjs
-```
-
-## Example output
-
-```json
-[
- {
- "signature": "Transfer(address,address,uint256)",
- "name": "Transfer",
- "args": [
- {
- "name": "from",
- "type": "address",
- "indexed": true
- },
- {
- "name": "to",
- "type": "address",
- "indexed": true
- },
- {
- "name": "tokenId",
- "type": "uint256",
- "indexed": true
- }
- ]
- },
- ...
-]
-```
diff --git a/API/event/event.name.md b/API/event/event.name.md
deleted file mode 100644
index 09a4a0f4..00000000
--- a/API/event/event.name.md
+++ /dev/null
@@ -1,53 +0,0 @@
----
-description: Returns the name of the event.
----
-
-# Event.name
-
-## Return type
-
-→ str
-
-## Example
-
-```python
-from glider import *
-def query():
- # Find contracts with the suffix "ERC20"
- contracts = Contracts().name_suffix("ERC20").exec(100)
-
- contractsWithEvents = []
- for c in contracts:
- contract = {"name": c.name, "events": []}
- for event in c.events():
- contract["events"].append(event.name)
-
- # For each contract, return its name and the names of its events
- contractsWithEvents.append(contract)
-
- return contractsWithEvents
-```
-
-## Example output
-
-```json
-[
- {
- "name": "ERC20",
- "events": ["OwnershipTransferred", "Transfer", "Approval"]
- },
- {
- "name": "DelegateERC20",
- "events": [
- "OwnershipTransferred",
- "Transfer",
- "Approval",
- "Burn",
- "SetBurnBounds",
- "Blacklisted",
- "Mint"
- ]
- },
- ...
-]
-```
diff --git a/API/event/event.signature.md b/API/event/event.signature.md
deleted file mode 100644
index ba00a58f..00000000
--- a/API/event/event.signature.md
+++ /dev/null
@@ -1,57 +0,0 @@
----
-description: Returns the signature of the event.
----
-
-# Event.signature
-
-## Return type
-
-→ str
-
-## Example
-
-```python
-from glider import *
-def query():
- # Find contracts with the suffix "ERC20"
- contracts = Contracts().name_suffix("ERC20").exec(100)
-
- contractsWithEvents = []
- for c in contracts:
- contract = {"name": c.name, "events": []}
- for event in c.events():
- contract["events"].append(event.signature)
-
- # For each contract, return its name and the signatures of its events
- contractsWithEvents.append(contract)
-
- return contractsWithEvents
-```
-
-## Example output
-
-```json
-[
- {
- "name": "ERC20",
- "events": [
- "OwnershipTransferred(address,address)",
- "Transfer(address,address,uint256)",
- "Approval(address,address,uint256)"
- ]
- },
- {
- "name": "DelegateERC20",
- "events": [
- "OwnershipTransferred(address,address)",
- "Transfer(address,address,uint256)",
- "Approval(address,address,uint256)",
- "Burn(address,uint256)",
- "SetBurnBounds(uint256,uint256)",
- "Blacklisted(address,bool)",
- "Mint(address,uint256)"
- ]
- },
- ...
-]
-```
diff --git a/API/expressioninstruction.md b/API/expressioninstruction.md
deleted file mode 100644
index ebc252aa..00000000
--- a/API/expressioninstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# ExpressionInstruction
-
diff --git a/API/function/README.md b/API/function/README.md
deleted file mode 100644
index 7cbcb403..00000000
--- a/API/function/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Function
-
-The class represents a single function object.
diff --git a/API/function/function.get_callee_functions.md b/API/function/function.get_callee_functions.md
deleted file mode 100644
index 4871663b..00000000
--- a/API/function/function.get_callee_functions.md
+++ /dev/null
@@ -1,6 +0,0 @@
----
-description: Returns a Functions object that represents functions that call the function.
----
-
-# Function.get\_callee\_functions()
-
diff --git a/API/function/function.has_modifiers.md b/API/function/function.has_modifiers.md
deleted file mode 100644
index b510a791..00000000
--- a/API/function/function.has_modifiers.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.has\_modifiers()
-
diff --git a/API/function/function.is_constructor.md b/API/function/function.is_constructor.md
deleted file mode 100644
index b028a563..00000000
--- a/API/function/function.is_constructor.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.is\_constructor()
-
diff --git a/API/function/function.is_external.md b/API/function/function.is_external.md
deleted file mode 100644
index dc35b854..00000000
--- a/API/function/function.is_external.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.is\_external()
-
diff --git a/API/function/function.is_global.md b/API/function/function.is_global.md
deleted file mode 100644
index 0efdad61..00000000
--- a/API/function/function.is_global.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.is\_global()
-
diff --git a/API/function/function.is_internal.md b/API/function/function.is_internal.md
deleted file mode 100644
index d88a6a4c..00000000
--- a/API/function/function.is_internal.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.is\_internal()
-
diff --git a/API/function/function.is_payable.md b/API/function/function.is_payable.md
deleted file mode 100644
index cc38a3fe..00000000
--- a/API/function/function.is_payable.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.is\_payable()
-
diff --git a/API/function/function.is_private.md b/API/function/function.is_private.md
deleted file mode 100644
index 07b8cc31..00000000
--- a/API/function/function.is_private.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.is\_private()
-
diff --git a/API/function/function.is_public.md b/API/function/function.is_public.md
deleted file mode 100644
index a3d4469c..00000000
--- a/API/function/function.is_public.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.is\_public()
-
diff --git a/API/function/function.is_pure.md b/API/function/function.is_pure.md
deleted file mode 100644
index 33370611..00000000
--- a/API/function/function.is_pure.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.is\_pure()
-
diff --git a/API/function/function.is_view.md b/API/function/function.is_view.md
deleted file mode 100644
index 833011f3..00000000
--- a/API/function/function.is_view.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Function.is\_view()
-
diff --git a/API/function/function.modifiers.md b/API/function/function.modifiers.md
deleted file mode 100644
index b699fab5..00000000
--- a/API/function/function.modifiers.md
+++ /dev/null
@@ -1,29 +0,0 @@
-# Function.modifiers()
-
-Returns the [Modifiers](../modifiers/) object for the modifiers of the function.
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of functions
- functions = Functions().exec(100)
-
- # Retrieve the modifiers of the first function
- modifers = functions[0].modifiers().exec();
-
- return modifers
-```
-
-\
-
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_modifier": "modifier onlyOwner() {\n require(owner() == _msgSender(),\"Ownable: caller is not the owner\");\n _;\n }"
-}
-```
diff --git a/API/function/function.other_entry_point_instructions.md b/API/function/function.other_entry_point_instructions.md
deleted file mode 100644
index 9fb5e998..00000000
--- a/API/function/function.other_entry_point_instructions.md
+++ /dev/null
@@ -1,14 +0,0 @@
-# Function.other\_entry\_point\_instructions()
-
-Returns other\_entry\_point instructions of the function.
-
-```python
-```
-
-\
-
-
-Output:
-
-```json
-```
diff --git a/API/function/function.properties-1.md b/API/function/function.properties-1.md
deleted file mode 100644
index 4c17993b..00000000
--- a/API/function/function.properties-1.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Function.properties()
-
-Returns the function's properties as a list of [MethodProps](../methodprop/)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of functions
- functions = Functions().exec(10)
-
- # Retrieve the properties of the first function
- properties = functions[0].properties()
- for prop in properties:
- print(prop)
-
- return functions
-```
-
-\
-
-
-Output:
-
-```json
-{
- "print_output": [
- "MethodProp.IS_VIEW",
- "MethodProp.INTERNAL"
- ]
-}
-```
diff --git a/API/function/function.properties.md b/API/function/function.properties.md
deleted file mode 100644
index d65292dc..00000000
--- a/API/function/function.properties.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Function.Properties
-
-BOOL = {MethodProp.IS\_CONSTRUCTOR: 'is\_constructor', MethodProp.IS\_GLOBAL: 'is\_global', MethodProp.IS\_PAYABLE: 'is\_payable', MethodProp.IS\_PURE: 'is\_pure', MethodProp.IS\_VIEW: 'is\_view'}
-
-DICT = {MethodProp.HAS\_CALLEES: 'callees'}
-
-LIST = {MethodProp.HAS\_ARGS: 'args', MethodProp.HAS\_ERRORS: 'errors', MethodProp.HAS\_MODIFIERS: 'modifiers', MethodProp.HAS\_STATE\_VARIABLES\_READ: 'state\_variables\_read', MethodProp.HAS\_STATE\_VARIABLES\_WRITTEN: 'state\_variables\_written'}
-
-VISIBILITY = \[MethodProp.PUBLIC, MethodProp.EXTERNAL, MethodProp.INTERNAL, MethodProp.PRIVATE]
diff --git a/API/function/function.return_instructions.md b/API/function/function.return_instructions.md
deleted file mode 100644
index eea65eae..00000000
--- a/API/function/function.return_instructions.md
+++ /dev/null
@@ -1,30 +0,0 @@
-# Function.return\_instructions()
-
-Returns the `return` instructions of the function.
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of functions
- functions = Functions().exec(10)
-
- # Retrieve the return instructions of the first function
- instruction = functions[0].return_instructions()
-
- return instruction
-```
-
-\
-
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }",
- "sol_instruction": "return msg.sender"
-}
-```
diff --git a/API/function/function.return_tuple.md b/API/function/function.return_tuple.md
deleted file mode 100644
index 74cf2c70..00000000
--- a/API/function/function.return_tuple.md
+++ /dev/null
@@ -1,28 +0,0 @@
-# Function.return\_tuple()
-
-Returns the function's `return (type, value)` tuples.
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of functions
- functions = Functions().exec(10)
-
- # Retrieve the return instructions of the first function
- tuple_list = functions[0].return_tuple()
-
- return tuple_list
-```
-
-\
-
-
-Output:
-
-```json
-[
- "address",
- ""
-]
-```
diff --git a/API/functions/README.md b/API/functions/README.md
deleted file mode 100644
index 40ded68b..00000000
--- a/API/functions/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Functions
-
-The aim of this class is to filter functions with specified properties.
diff --git a/API/functions/functions.constructors.md b/API/functions/functions.constructors.md
deleted file mode 100644
index 0da62ae8..00000000
--- a/API/functions/functions.constructors.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Functions.constructors()
-
-Adds a filter to get only the constructors.
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of constructors
- functions = Functions().constructors().exec(2)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "constructor() {\n _setOwner(_msgSender());\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "constructor(string memory name_,string memory symbol_) {\n _name = name_;\n _symbol = symbol_;\n }"
- }
-]
-
diff --git a/API/functions/functions.exec.md b/API/functions/functions.exec.md
deleted file mode 100644
index dff0b68c..00000000
--- a/API/functions/functions.exec.md
+++ /dev/null
@@ -1,34 +0,0 @@
-# Functions.exec()
-
-Executes the formed query and returns a list of the Function objects.
-
-Parameters : `limit_count: int = 0, offset_count: int = 0`
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of functions
- functions = Functions().exec(2)
-
- return functions
-```
-
-
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }"
- }
-]
-```
diff --git a/API/functions/functions.list.md b/API/functions/functions.list.md
deleted file mode 100644
index c29526e3..00000000
--- a/API/functions/functions.list.md
+++ /dev/null
@@ -1,33 +0,0 @@
-# Functions.list()
-
-Executes the formed query and returns a list of the Function objects.
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of functions
- functions = Functions().list()
-
- return functions
-```
-
-
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }"
- },
- ...
-]
-```
diff --git a/API/functions/functions.with_all_properties.md b/API/functions/functions.with_all_properties.md
deleted file mode 100644
index 75ef3377..00000000
--- a/API/functions/functions.with_all_properties.md
+++ /dev/null
@@ -1,37 +0,0 @@
-# Functions.with\_all\_properties()
-
-Adds a filter to get functions that have all given properties.
-
-Parameters : `properties: List[MethodProp]`
-
-```python
-from glider import *
-
-def query():
-
- properties = [MethodProp.IS_PAYABLE, MethodProp.EXTERNAL]
-
- # Fetch a list of functions with all the properties
- functions = Functions().with_all_properties(properties).exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_function": "function issueNft(address to,uint256 tokenId,uint256 amount,string memory tokenURI) external payable onlyMinterOrOwner { \n \n require(to != address(this),\"Issue to a new address\");\n require(ownerOf(tokenId) == address(this),\"NFT already issued\");\n \n \n\n _setTokenURI(nextId,tokenURI);\n this.safeTransferFrom(address(this),to,tokenId);\n emit NFTIssued(tokenId,to,tokenURI);\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_function": "function withdrawETH() external payable onlyOwner {\n payable(msg.sender).transfer(address(this).balance);\n }"
- }
-]
-
diff --git a/API/functions/functions.with_declarer_contract_name.md b/API/functions/functions.with_declarer_contract_name.md
deleted file mode 100644
index a282e3b3..00000000
--- a/API/functions/functions.with_declarer_contract_name.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.with\_declarer\_contract\_name()
-
-Adds a filter to get functions that have declarer contract with the given name.
-
-Parameters : `name: str, sensitivity: bool = True`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions with declarer contract name 'Vault'
- functions = Functions().with_declarer_contract_name('Vault').exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "Vault",
- "sol_function": "constructor(IVaultGovernance vaultGovernance_,address[] memory vaultTokens_) {\n require(CommonLibrary.isSortedAndUnique(vaultTokens_),Exceptions.SORTED_AND_UNIQUE);\n _vaultGovernance = vaultGovernance_;\n _vaultTokens = vaultTokens_;\n for (uint256 i = 0; i < vaultTokens_.length; i++) {\n _vaultTokensIndex[vaultTokens_[i]] = true;\n }\n }"
- },
- {
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "Vault",
- "sol_function": "function vaultGovernance() external view returns (IVaultGovernance) {\n return _vaultGovernance;\n }"
- }
-]
-
diff --git a/API/functions/functions.with_modifier_name.md b/API/functions/functions.with_modifier_name.md
deleted file mode 100644
index 9590260f..00000000
--- a/API/functions/functions.with_modifier_name.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.with\_modifier\_name()
-
-Adds a filter to get functions that have a modifier with the given name.
-
-Parameters : `name: str, sensitivity: bool = True`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions with nonReentrant modifier
- functions = Functions().with_modifier_name('nonReentrant').exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "StakingRewards",
- "sol_function": "function stake(uint256 amount) external nonReentrant notPaused updateReward(msg.sender) {\n require(amount > 0,\"Cannot stake 0\");\n _totalSupply = _totalSupply.add(amount);\n _balances[msg.sender] = _balances[msg.sender].add(amount);\n stakingToken.safeTransferFrom(msg.sender,address(this),amount);\n emit Staked(msg.sender,amount);\n }"
- },
- {
- "contract": "0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2",
- "contract_name": "StakingRewards",
- "sol_function": "function withdraw(uint256 amount) public nonReentrant updateReward(msg.sender) {\n require(amount > 0,\"Cannot withdraw 0\");\n _totalSupply = _totalSupply.sub(amount);\n _balances[msg.sender] = _balances[msg.sender].sub(amount);\n stakingToken.safeTransfer(msg.sender,amount);\n emit Withdrawn(msg.sender,amount);\n }"
- }
-]
-
diff --git a/API/functions/functions.with_modifier_name_not.md b/API/functions/functions.with_modifier_name_not.md
deleted file mode 100644
index 6feac195..00000000
--- a/API/functions/functions.with_modifier_name_not.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.with\_modifier\_name\_not()
-
-Adds a filter to get functions that either have no modifier with the given name or have no modifier at all.
-
-Parameters : `name: str, sensitivity: bool = True`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions without onlyOwner modifier
- functions = Functions().with_modifier_name_not('onlyOwner').exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }"
- }
-]
-
diff --git a/API/functions/functions.with_modifier_name_regex.md b/API/functions/functions.with_modifier_name_regex.md
deleted file mode 100644
index f171482a..00000000
--- a/API/functions/functions.with_modifier_name_regex.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.with\_modifier\_name\_regex()
-
-Adds a filter to get functions, that have modifier whose name matches the given regex.
-
-Parameters : `regex: str`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions with modifiers starting with 'only'
- functions = Functions().with_modifier_name_regex('^only.*').exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function renounceOwnership() public virtual onlyOwner {\n _setOwner(address(0));\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "LTP",
- "sol_function": "function issueNft(address to,uint256 tokenId,uint256 amount,string memory tokenURI) external payable onlyMinterOrOwner { \n \n require(to != address(this),\"Issue to a new address\");\n require(ownerOf(tokenId) == address(this),\"NFT already issued\");\n \n \n\n _setTokenURI(nextId,tokenURI);\n this.safeTransferFrom(address(this),to,tokenId);\n emit NFTIssued(tokenId,to,tokenURI);\n }"
- }
-]
-
diff --git a/API/functions/functions.with_modifier_signature.md b/API/functions/functions.with_modifier_signature.md
deleted file mode 100644
index e6f66edd..00000000
--- a/API/functions/functions.with_modifier_signature.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.with\_modifier\_signature()
-
-Adds a filter to get functions that have a modifier with the given signature.
-
-Parameters : `signature: str`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions with specific modifier signature
- functions = Functions().with_modifier_signature('onlyOwner(address)').exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x4D0Ef64d92e681840CCd929391D1B8CD3B175FA6",
- "contract_name": "PiggyBankFundraise",
- "sol_function": "function disburseFunds(address _client) public onlyOwner(_client) {\n require(!fundsWithdrawn,\"fund withdraw has already been called\");\n require(checkFundraisingTarget()==true,\"funding goal not met\");\n \n fundsWithdrawn = true;\n emit WithdrawAll(address(this).balance,block.timestamp);\n owner.transfer(address(this).balance);\n }"
- },
- {
- "contract": "0xFBb2bE4d126D4B4478d2416D59268101DF633E5e",
- "contract_name": "UserSharesInfo",
- "sol_function": "function forwardAddress(address addr,address newAddr) \n public onlyOwner(addr) {\n \n addressForwards[addr] = newAddr;\n }"
- }
-]
-
diff --git a/API/functions/functions.with_modifiers_name.md b/API/functions/functions.with_modifiers_name.md
deleted file mode 100644
index 0519dbfb..00000000
--- a/API/functions/functions.with_modifiers_name.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.with\_modifiers\_name()
-
-Adds a filter to get functions that have a modifier with one of the given names.
-
-Parameters : `names: List[str], sensitivity: bool = True`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions with modifiers from the given list
- functions = Functions().with_modifiers_name(['onlyAdmin','onlyOwner']).exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x2d8bE62BF76F5c6962E0E44e93374786F329260c",
- "contract_name": "ComposableHolding",
- "sol_function": "function addInvestmentStrategy(address strategyAddress)\n external\n onlyAdmin\n validAddress(strategyAddress)\n {\n investmentStrategies[strategyAddress] = true;\n }"
- },
- {
- "contract": "0x2d8bE62BF76F5c6962E0E44e93374786F329260c",
- "contract_name": "ComposableHolding",
- "sol_function": "function addInvestmentStrategy(address strategyAddress)\n external\n onlyAdmin\n validAddress(strategyAddress)\n {\n investmentStrategies[strategyAddress] = true;\n }"
- }
-]
-
diff --git a/API/functions/functions.with_modifiers_name_not.md b/API/functions/functions.with_modifiers_name_not.md
deleted file mode 100644
index a8c72e25..00000000
--- a/API/functions/functions.with_modifiers_name_not.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.with\_modifiers\_name\_not()
-
-Adds a filter to get functions that don't have any modifier with one of the given names.
-
-Parameters : `names: List[str], sensitivity: bool = True`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions without modifiers from the given list
- functions = Functions().with_modifiers_name_not(['onlyAdmin','onlyOwner']).exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }"
- }
-]
-
diff --git a/API/functions/functions.with_modifiers_name_regex.md b/API/functions/functions.with_modifiers_name_regex.md
deleted file mode 100644
index bb8e73f4..00000000
--- a/API/functions/functions.with_modifiers_name_regex.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.with\_modifiers\_name\_regex()
-
-Adds a filter to get functions that have a modifier whose name matches one of the given regexes.
-
-Parameters : `regexes: List[str]`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions with modifiers matching regex list
- functions = Functions().with_modifiers_name_regex(['^only.*', 'admin']).exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function renounceOwnership() public virtual onlyOwner {\n _setOwner(address(0));\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0),\"Ownable: new owner is the zero address\");\n _setOwner(newOwner);\n }"
- }
-]
-
diff --git a/API/functions/functions.with_one_property.md b/API/functions/functions.with_one_property.md
deleted file mode 100644
index 6f02ad2d..00000000
--- a/API/functions/functions.with_one_property.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.with\_one\_property()
-
-Adds a filter to get functions that at least have one of the given properties.
-
-Parameters : `properties: List[MethodProp]`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions which a external
- functions = Functions().with_one_property([MethodProp.EXTERNAL]).exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "IERC165",
- "sol_function": "function supportsInterface(bytes4 interfaceId) external view returns (bool);"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "IERC721",
- "sol_function": "function supportsInterface(bytes4 interfaceId) external view returns (bool);"
- }
-]
-
diff --git a/API/functions/functions.without_properties.md b/API/functions/functions.without_properties.md
deleted file mode 100644
index c7e929b3..00000000
--- a/API/functions/functions.without_properties.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# Functions.without\_properties()
-
-Adds a filter to get functions that don't have any of the given properties.
-
-Parameters : `properties: List[MethodProp]`
-
-```python
-from glider import *
-
-def query():
-
- # Fetch a list of functions which are not external/public
- functions = Functions().without_properties([MethodProp.EXTERNAL, MethodProp.PUBLIC]).exec(10)
-
- return functions
-```
-
-\
-
-
-Output:
-
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }"
- }
-]
-
diff --git a/API/ifinstruction/README.md b/API/ifinstruction/README.md
deleted file mode 100644
index 65c66056..00000000
--- a/API/ifinstruction/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# IfInstruction
-
diff --git a/API/ifinstruction/ifinstruction.first_false_instruction.md b/API/ifinstruction/ifinstruction.first_false_instruction.md
deleted file mode 100644
index d0bf43e1..00000000
--- a/API/ifinstruction/ifinstruction.first_false_instruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# IfInstruction.first\_false\_instruction()
-
diff --git a/API/ifinstruction/ifinstruction.first_true_instruction.md b/API/ifinstruction/ifinstruction.first_true_instruction.md
deleted file mode 100644
index 5792ba52..00000000
--- a/API/ifinstruction/ifinstruction.first_true_instruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# IfInstruction.first\_true\_instruction()
-
diff --git a/API/ifinstruction/ifinstruction.get_condition.md b/API/ifinstruction/ifinstruction.get_condition.md
deleted file mode 100644
index 63b3d5bd..00000000
--- a/API/ifinstruction/ifinstruction.get_condition.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# IfInstruction.get\_condition()
-
diff --git a/API/ifloopinstruction.md b/API/ifloopinstruction.md
deleted file mode 100644
index 1da543c6..00000000
--- a/API/ifloopinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# IfLoopInstruction
-
diff --git a/API/instruction/README.md b/API/instruction/README.md
deleted file mode 100644
index f5348b55..00000000
--- a/API/instruction/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Instruction
-
diff --git a/API/instruction/instruction.backward_df.md b/API/instruction/instruction.backward_df.md
deleted file mode 100644
index ae8e457c..00000000
--- a/API/instruction/instruction.backward_df.md
+++ /dev/null
@@ -1,30 +0,0 @@
----
-description: >-
- Returns a list of all previous instructions of the current node in the data
- flow graph. It returns 0 for an instruction that does not have any previous
- instructions.
----
-
-# Instruction.backward\_df()
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch an instruction
- instructions = Instructions().exec(1,16)
- # return the list of previous instructions of the current instruction
- return instructions[0].backward_df()
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0),\"Ownable: new owner is the zero address\");\n _setOwner(newOwner);\n }",
- "sol_instruction": "require(newOwner != address(0),\"Ownable: new owner is the zero address\")"
-}
-```
diff --git a/API/instruction/instruction.callee_names.md b/API/instruction/instruction.callee_names.md
deleted file mode 100644
index da36bb38..00000000
--- a/API/instruction/instruction.callee_names.md
+++ /dev/null
@@ -1,30 +0,0 @@
----
-description: >-
- Returns the list of function names that are called from the instruction. It
- returns an empty list for an instruction that does not call any functions
----
-
-# Instruction.callee\_names()
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch an instruction
- instruction = Instructions().exec(1,16)
- #print the list of function names called from the instruction
- print(instruction[0].callee_names())
- return []
-```
-
-Output
-
-```
-{"print_output":
- [
- "['require']"
- ]
-}
-
-```
diff --git a/API/instruction/instruction.db_id.md b/API/instruction/instruction.db_id.md
deleted file mode 100644
index 7c4203d3..00000000
--- a/API/instruction/instruction.db_id.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# Instruction.db\_id
-
-Returns the unique id of an instruction in the glider database
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch an instruction
- instructions = Instructions().exec(1,16)
- #print the db_id of an instruction
- print(instructions[0].db_id)
- return []
-```
-
-Output
-
-```json
-{
- "print_output": ["instructions/3e43450b9ca1f0ac4516b0b4177d825f"]
-}
-```
diff --git a/API/instruction/instruction.extended_backward_df.md b/API/instruction/instruction.extended_backward_df.md
deleted file mode 100644
index e39e2bd1..00000000
--- a/API/instruction/instruction.extended_backward_df.md
+++ /dev/null
@@ -1,4 +0,0 @@
-# Instruction.extended\_backward\_df()
-
-```
-```
diff --git a/API/instruction/instruction.forward_df.md b/API/instruction/instruction.forward_df.md
deleted file mode 100644
index 51507eb8..00000000
--- a/API/instruction/instruction.forward_df.md
+++ /dev/null
@@ -1,30 +0,0 @@
----
-description: >-
- Returns a list of all instructions following the current node in the current
- data flow graph. It returns 0 for an instruction that does not have any
- following instructions.
----
-
-# Instruction.forward\_df()
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch an instruction
- instructions = Instructions().exec(1,16)
- # return the list of instructions following the current instruction
- return instructions[0].forward_df()
-```
-
-Output
-
-```python
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0),\"Ownable: new owner is the zero address\");\n _setOwner(newOwner);\n }",
- "sol_instruction": "require(newOwner != address(0),\"Ownable: new owner is the zero address\")"
-}
-```
diff --git a/API/instruction/instruction.get_callee_values.md b/API/instruction/instruction.get_callee_values.md
deleted file mode 100644
index 4f29fede..00000000
--- a/API/instruction/instruction.get_callee_values.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# Instruction.get\_callee\_values()
-
-
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch an instruction
- instruction = Instructions().exec(1,16)
- #print the expression of the callee
- print(instruction[0].get_callee_values()[0].expression)
- return []
-```
-
-Output
-
-```json
-{
- "print_output":
- ["require(bool,string)(newOwner != address(0),\"Ownable: new owner is the zero address\")"]
-}
-```
diff --git a/API/instruction/instruction.get_dest.md b/API/instruction/instruction.get_dest.md
deleted file mode 100644
index 76f2c22a..00000000
--- a/API/instruction/instruction.get_dest.md
+++ /dev/null
@@ -1,22 +0,0 @@
-# Instruction.get\_dest()
-
-Query
-
-```python
-from glider import *
-def query():
- instruction = Instructions().exec(1,54)
- dests = instruction[0].get_dest()
- for dest in dests:
- print(dest.node.expression)
-
- return []
-```
-
-Output
-
-```python
-{
- "print_output": ["NEW VARIABLE owner = ERC721.ownerOf(tokenId)"]
-}
-```
diff --git a/API/instruction/instruction.get_operand.md b/API/instruction/instruction.get_operand.md
deleted file mode 100644
index 96ec5ecb..00000000
--- a/API/instruction/instruction.get_operand.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# Instruction.get\_operand()
-
-Query
-
-```python
-from glider import *
-def query():
- instruction = Instructions().exec(1,54)
- print(instruction[0].get_operand(0).expression)
- return []
-```
-
-Output
-
-```json
-{
- "print_output": ["ERC721.ownerOf(tokenId)"]
-}
-```
diff --git a/API/instruction/instruction.get_operands.md b/API/instruction/instruction.get_operands.md
deleted file mode 100644
index 434c1478..00000000
--- a/API/instruction/instruction.get_operands.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# Instruction.get\_operands()
-
-Query
-
-```python
-from glider import *
-def query():
- instruction = Instructions().exec(1,54)
- #print the expression of the first operand returned by get_operands()
- print(instruction[0].get_operands()[0].expression)
- return []
-```
-
-Output
-
-```json
-{
- "print_output": ["ERC721.ownerOf(tokenId)"]
-}
-```
diff --git a/API/instruction/instruction.get_parent.md b/API/instruction/instruction.get_parent.md
deleted file mode 100644
index 295589fd..00000000
--- a/API/instruction/instruction.get_parent.md
+++ /dev/null
@@ -1,22 +0,0 @@
----
-description: Returns parent function/modifier of the instruction.
----
-
-# Instruction.get\_parent()
-
-```python
-from glider import *
-def query():
- #return the parent function/modifier of an instruction
- return [Instructions().exec(1)[0].get_parent()]
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }"
-}
-```
diff --git a/API/instruction/instruction.has_global_df.md b/API/instruction/instruction.has_global_df.md
deleted file mode 100644
index 9caade68..00000000
--- a/API/instruction/instruction.has_global_df.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: >-
- Returns true if the instruction has an external dependency on external
- variables, false otherwise.
----
-
-# Instruction.has\_global\_df()
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch an instruction
- instructions = Instructions().exec(5)
- results = []
- #check if the instruction has dependency on a global variable
- for instruction in instructions:
- if instruction.has_global_df():
- res.append(instruction)
- return results
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }",
- "sol_instruction": "return msg.sender"
-}
-```
-
diff --git a/API/instruction/instruction.instruction_data.md b/API/instruction/instruction.instruction_data.md
deleted file mode 100644
index 7746a5fa..00000000
--- a/API/instruction/instruction.instruction_data.md
+++ /dev/null
@@ -1,27 +0,0 @@
----
-description: Returns a dictionary containing data about the instruction.
----
-
-# Instruction.instruction\_data
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch an instruction
- instruction = Instructions().exec(1)
- #print an instruction's instruction_data dict
- print(instruction[0].instruction_data)
- return []
-```
-
-Output
-
-```json
-{
- "print_output": [
- "{'_key': '80af75b7003ddd45de34a5c189a5c1d1', '_id': 'instructions/80af75b7003ddd45de34a5c189a5c1d1', '_rev': '_h_ZmbGe---', 'node': 'ENTRY_POINT', 'id': 0, 'type': 'NodeType.ENTRYPOINT', 'irs': [], 'irs_ssa': [], 'from_asm': False, 'is_cmp': False, 'source_lines': [19, 20, 21], 'start_column': 67, 'end_column': 6, 'callees': {'internal': [], 'high_level': [], 'library_calls': [], 'low_level': [], 'solidity': []}, 'dest': [], 'operands': [], 'variables_read': [], 'variables_written': [], 'dominators': [0], 'immediate_dominator': [], 'dominator_successors': [1], 'dominance_frontier': []}"
- ]
-}
-```
diff --git a/API/instruction/instruction.is_assembly.md b/API/instruction/instruction.is_assembly.md
deleted file mode 100644
index b9a3b74c..00000000
--- a/API/instruction/instruction.is_assembly.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: >-
- Returns True if the instruction is an assembly instruction, otherwise returns
- False. Assembly instructions are written in Yul in an assembly block in a
- solidity contract
----
-
-# Instruction.is\_assembly()
-
-Query
-
-```python
-from glider import *
-def query():
- assembly = []
- #fetch a list of instructions
- instructions = Instructions().exec(150)
- for instruction in instructions:
- #check if an instruction is an assembly instruction
- if(instruction.is_assembly()):
- assembly.append(instruction)
- return assembly
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function _checkOnERC721Received(\n address from,address to,uint256 tokenId,bytes memory _data\n ) private returns (bool) {\n if (to.isContract()) {\n try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {\n return retval == IERC721Receiver.onERC721Received.selector;\n } catch (bytes memory reason) {\n if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n assembly {\n revert(add(32,reason),mload(reason))\n }\n }\n }\n } else {\n return true;\n }\n }",
- "sol_instruction": "assembly {\n revert(add(32,reason),mload(reason))\n }"
-}
-```
diff --git a/API/instruction/instruction.is_break.md b/API/instruction/instruction.is_break.md
deleted file mode 100644
index 9bb9a765..00000000
--- a/API/instruction/instruction.is_break.md
+++ /dev/null
@@ -1,31 +0,0 @@
----
-description: Returns True if the instruction is break instruction, otherwise returns False.
----
-
-# Instruction.is\_break()
-
-Query
-
-```python
-from glider import *
-def query():
- breaks = []
- #fetch a list of instructions
- instructions = Instructions().exec(1350)
- for instruction in instructions:
- #check if an instruction is a break instruction
- if(instruction.is_break()):
- breaks.append(instruction)
- return breaks
-```
-
-Output
-
-```json
-{
- "contract": "0x561ae3768ee95987b355c287f985f2838f01e632",
- "contract_name": "PBX",
- "sol_function": "function includeInReward(address account) external onlyOwner() {\n require(_isExcluded[account],\"Account is already included\");\n require(account != address(0),\"Address is not valid\");\n for (uint256 i = 0; i < _excluded.length; i++) {\n if (_excluded[i] == account) {\n _excluded[i] = _excluded[_excluded.length - 1];\n _tOwned[account] = 0;\n _isExcluded[account] = false;\n _excluded.pop();\n break;\n }\n }\n }",
- "sol_instruction": "break"
-}
-```
diff --git a/API/instruction/instruction.is_call.md b/API/instruction/instruction.is_call.md
deleted file mode 100644
index b1172ddf..00000000
--- a/API/instruction/instruction.is_call.md
+++ /dev/null
@@ -1,32 +0,0 @@
----
-description: Returns True if the instruction is call instruction, otherwise returns False.
----
-
-# Instruction.is\_call()
-
-Query
-
-```python
-from glider import *
-def query():
- calls = []
- #fetch a list of instructions
- instructions = Instructions().exec(10)
- for instruction in instructions:
- if(instruction.is_call()):
- calls.append(instruction)
- return calls
-```
-
-
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "constructor() {\n _setOwner(_msgSender());\n }",
- "sol_instruction": "_setOwner(_msgSender())"
-}
-```
diff --git a/API/instruction/instruction.is_catch.md b/API/instruction/instruction.is_catch.md
deleted file mode 100644
index b19fd85b..00000000
--- a/API/instruction/instruction.is_catch.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: >-
- Returns True if the instruction is catch instruction in a try-catch block,
- otherwise returns False.
----
-
-# Instruction.is\_catch()
-
-Query
-
-```python
-from glider import *
-def query():
- catch = []
- #fetch a list of instructions
- instructions = Instructions().exec(1,120)
- for instruction in instructions:
- #check if instruction is a catch instruction
- if(instruction.is_catch()):
- catch.append(instruction)
- return catch
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function _checkOnERC721Received(\n address from,address to,uint256 tokenId,bytes memory _data\n ) private returns (bool) {\n if (to.isContract()) {\n try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {\n return retval == IERC721Receiver.onERC721Received.selector;\n } catch (bytes memory reason) {\n if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n assembly {\n revert(add(32,reason),mload(reason))\n }\n }\n }\n } else {\n return true;\n }\n }",
- "sol_instruction": "catch (bytes memory reason) {\n if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n assembly {\n revert(add(32,reason),mload(reason))\n }\n }\n }"
-}
-```
diff --git a/API/instruction/instruction.is_cmp.md b/API/instruction/instruction.is_cmp.md
deleted file mode 100644
index 678c8182..00000000
--- a/API/instruction/instruction.is_cmp.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: >-
- Returns True if the instruction is a comparison instruction i.e performing
- comparison operation/s using operators like >, <, == etc.., otherwise returns
- False.
----
-
-# Instruction.is\_cmp()
-
-Query
-
-```python
-from glider import *
-def query():
- comparisons = []
- #fetch a list of instructions
- instructions = Instructions().exec(30)
- for instruction in instructions:
- #check if instruction is a comparison instruction
- if(instruction.is_cmp()):
- comparisons.append(instruction)
- return comparisons
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC165",
- "sol_function": "function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {\n return interfaceId == type(IERC165).interfaceId;\n }",
- "sol_instruction": "return interfaceId == type(IERC165).interfaceId"
-}
-```
diff --git a/API/instruction/instruction.is_continue.md b/API/instruction/instruction.is_continue.md
deleted file mode 100644
index 2d8ccb8a..00000000
--- a/API/instruction/instruction.is_continue.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: >-
- Returns True if the instruction is CONTINUE instruction, otherwise returns
- False.
----
-
-# Instruction.is\_continue()
-
-Query
-
-```python
-from glider import *
-def query():
- continues = []
- #fetch a list of instructions
- instructions = Instructions().exec(2750)
- for instruction in instructions:
- #check if instruction is a continue instruction
- if(instruction.is_continue()):
- continues.append(instruction)
- return continues
-```
-
-Output
-
-```
-{
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "Vault",
- "sol_function": "function reclaimTokens(address to,address[] memory tokens) external nonReentrant {\n require(_nft > 0,Exceptions.INITIALIZATION);\n IProtocolGovernance governance = _vaultGovernance.internalParams().protocolGovernance;\n bool isProtocolAdmin = governance.isAdmin(msg.sender);\n require(isProtocolAdmin || _isApprovedOrOwner(msg.sender),Exceptions.ADMIN);\n if (!isProtocolAdmin) {\n require(_isValidPullDestination(to),Exceptions.VALID_PULL_DESTINATION);\n }\n uint256[] memory tokenAmounts = new uint256[](tokens.length);\n for (uint256 i = 0; i < tokens.length; i++) {\n IERC20 token = IERC20(tokens[i]);\n tokenAmounts[i] = token.balanceOf(address(this));\n if (tokenAmounts[i] == 0) {\n continue;\n }\n token.safeTransfer(to,tokenAmounts[i]);\n }\n _postReclaimTokens(to,tokens);\n emit ReclaimTokens(to,tokens,tokenAmounts);\n }",
- "sol_instruction": "continue"
-}
-```
diff --git a/API/instruction/instruction.is_end_assembly.md b/API/instruction/instruction.is_end_assembly.md
deleted file mode 100644
index 241bce61..00000000
--- a/API/instruction/instruction.is_end_assembly.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: >-
- Returns true if the instruction is end_assembly instruction, otherwise returns
- false.
----
-
-# Instruction.is\_end\_assembly()
-
-Query
-
-```python
-from glider import *
-def query():
- end_assembly = []
- #fetch a list of instructions
- instructions = Instructions().exec(150)
- for instruction in instructions:
- #check if instruction is an end_assembly instruction
- if(instruction.is_end_assembly()):
- end_assembly.append(instruction)
- return end_assembly
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function _checkOnERC721Received(\n address from,address to,uint256 tokenId,bytes memory _data\n ) private returns (bool) {\n if (to.isContract()) {\n try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {\n return retval == IERC721Receiver.onERC721Received.selector;\n } catch (bytes memory reason) {\n if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n assembly {\n revert(add(32,reason),mload(reason))\n }\n }\n }\n } else {\n return true;\n }\n }",
- "sol_instruction": "assembly {\n revert(add(32,reason),mload(reason))\n }"
-}
-```
diff --git a/API/instruction/instruction.is_end_if.md b/API/instruction/instruction.is_end_if.md
deleted file mode 100644
index fd7bf538..00000000
--- a/API/instruction/instruction.is_end_if.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-description: >-
- Returns true if the instruction is end_if instruction, otherwise returns
- false.
----
-
-# Instruction.is\_end\_if()
-
-Query
-
-```python
-from glider import *
-def query():
- end_ifs = []
- #fetch a list of instructions
- instructions = Instructions().exec(128)
- for instruction in instructions:
- #check if instruction is an end_if instruction
- if(instruction.is_end_if()):
- end_ifs.append(instruction)
- return end_ifs
-```
-
-Output
-
-```json
-/{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function _checkOnERC721Received(\n address from,address to,uint256 tokenId,bytes memory _data\n ) private returns (bool) {\n if (to.isContract()) {\n try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {\n return retval == IERC721Receiver.onERC721Received.selector;\n } catch (bytes memory reason) {\n if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n assembly {\n revert(add(32,reason),mload(reason))\n }\n }\n }\n } else {\n return true;\n }\n }",
- "sol_instruction": "if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n assembly {\n revert(add(32,reason),mload(reason))\n }\n }"
-}
-```
-
diff --git a/API/instruction/instruction.is_end_loop.md b/API/instruction/instruction.is_end_loop.md
deleted file mode 100644
index 294d4136..00000000
--- a/API/instruction/instruction.is_end_loop.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: >-
- Returns true if the instruction is end_loop instruction, otherwise returns
- false.
----
-
-# Instruction.is\_end\_loop()
-
-Query
-
-```python
-from glider import *
-def query():
- end_loops = []
- #fetch a list of instructions
- instructions = Instructions().exec(525)
- for instruction in instructions:
- #check if instruction is an end_loop instruction
- if(instruction.is_end_loop()):
- end_loops.append(instruction)
- return end_loops
-```
-
-Output
-
-```
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Strings",
- "sol_function": "function toString(uint256 value) internal pure returns (string memory) {\n \n \n\n if (value == 0) {\n return \"0\";\n }\n uint256 temp = value;\n uint256 digits;\n while (temp != 0) {\n digits++;\n temp /= 10;\n }\n bytes memory buffer = new bytes(digits);\n while (value != 0) {\n digits -= 1;\n buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));\n value /= 10;\n }\n return string(buffer);\n }",
- "sol_instruction": "while (temp != 0) {\n digits++;\n temp /= 10;\n }"
-}
-```
diff --git a/API/instruction/instruction.is_entry_point.md b/API/instruction/instruction.is_entry_point.md
deleted file mode 100644
index 66af6d48..00000000
--- a/API/instruction/instruction.is_entry_point.md
+++ /dev/null
@@ -1,40 +0,0 @@
----
-description: >-
- Returns true if the instruction is entry_point instruction, otherwise returns
- false.
----
-
-# Instruction.is\_entry\_point()
-
-Query
-
-```python
-from glider import *
-def query():
- ifs = []
- #fetch a list of instructions
- instructions = Instructions().exec(3)
- for instruction in instructions:
- #check if instruction is an if instruction
- if(instruction.is_if()):
- ifs.append(instruction)
- return ifs
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }",
- "sol_instruction": "{\n return msg.sender;\n }"
-}
-
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }",
- "sol_instruction": "{\n return msg.data;\n }"
-}
-```
diff --git a/API/instruction/instruction.is_expression.md b/API/instruction/instruction.is_expression.md
deleted file mode 100644
index 5981b2bb..00000000
--- a/API/instruction/instruction.is_expression.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: >-
- Returns true if the instruction is an expression instruction, otherwise
- returns false.
----
-
-# Instruction.is\_expression()
-
-Query
-
-```python
-from glider import *
-def query():
- expressions = []
- #fetch a list of instructions
- instructions = Instructions().exec(10)
- for instruction in instructions:
- #check if instruction is an expression instruction
- if(instruction.is_expression()):
- expressions.append(instruction)
- return expressions
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "constructor() {\n _setOwner(_msgSender());\n }",
- "sol_instruction": "_setOwner(_msgSender())"
-}
-```
diff --git a/API/instruction/instruction.is_if.md b/API/instruction/instruction.is_if.md
deleted file mode 100644
index 40f5b3f4..00000000
--- a/API/instruction/instruction.is_if.md
+++ /dev/null
@@ -1,31 +0,0 @@
----
-description: Returns true if the instruction is an if instruction, otherwise returns false.
----
-
-# Instruction.is\_if()
-
-Query
-
-```python
-from glider import *
-def query():
- ifs = []
- #fetch a list of instructions
- instructions = Instructions().exec(100)
- for instruction in instructions:
- #check if instruction is an if instruction
- if(instruction.is_if()):
- ifs.append(instruction)
- return ifs
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function tokenURI(uint256 tokenId) public view virtual override returns (string memory) {\n require(_exists(tokenId),\"ERC721Metadata: URI query for nonexistent token\");\n\n string memory baseURI = _baseURI();\n return bytes(baseURI).length > 0 ? string(abi.encodePacked(baseURI,tokenId.toString())) : \"\";\n }",
- "sol_instruction": "return bytes(baseURI).length > 0 ? string(abi.encodePacked(baseURI,tokenId.toString())) : \"\""
-}
-```
diff --git a/API/instruction/instruction.is_if_loop.md b/API/instruction/instruction.is_if_loop.md
deleted file mode 100644
index 82e22cea..00000000
--- a/API/instruction/instruction.is_if_loop.md
+++ /dev/null
@@ -1,40 +0,0 @@
----
-description: >-
- Returns true if the instruction is if_loop instruction, otherwise returns
- false.
----
-
-# Instruction.is\_if\_loop()
-
-Query
-
-```python
-from glider import *
-def query():
- if_loops = []
- #fetch a list of instructions
- instructions = Instructions().exec(530)
- for instruction in instructions:
- #check if instruction is an if_loop instruction
- if(instruction.is_if_loop()):
- if_loops.append(instruction)
- return if_loops
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Strings",
- "sol_function": "function toString(uint256 value) internal pure returns (string memory) {\n \n \n\n if (value == 0) {\n return \"0\";\n }\n uint256 temp = value;\n uint256 digits;\n while (temp != 0) {\n digits++;\n temp /= 10;\n }\n bytes memory buffer = new bytes(digits);\n while (value != 0) {\n digits -= 1;\n buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));\n value /= 10;\n }\n return string(buffer);\n }",
- "sol_instruction": "temp != 0"
-}
-
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Strings",
- "sol_function": "function toString(uint256 value) internal pure returns (string memory) {\n \n \n\n if (value == 0) {\n return \"0\";\n }\n uint256 temp = value;\n uint256 digits;\n while (temp != 0) {\n digits++;\n temp /= 10;\n }\n bytes memory buffer = new bytes(digits);\n while (value != 0) {\n digits -= 1;\n buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));\n value /= 10;\n }\n return string(buffer);\n }",
- "sol_instruction": "value != 0"
-}
-```
diff --git a/API/instruction/instruction.is_other_entry_point.md b/API/instruction/instruction.is_other_entry_point.md
deleted file mode 100644
index 0a86f40d..00000000
--- a/API/instruction/instruction.is_other_entry_point.md
+++ /dev/null
@@ -1,18 +0,0 @@
----
-description: >-
- Returns true if the instruction is other_entry_point instruction, otherwise
- returns false.
----
-
-# Instruction.is\_other\_entry\_point()
-
-Query
-
-```
-```
-
-Output
-
-```
-// Some code
-```
diff --git a/API/instruction/instruction.is_placer.md b/API/instruction/instruction.is_placer.md
deleted file mode 100644
index a07a25c6..00000000
--- a/API/instruction/instruction.is_placer.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: >-
- Returns true if the instruction is placeholder instruction, otherwise returns
- false. A placeholder instruction is generally found in modifiers
----
-
-# Instruction.is\_placer()
-
-Query
-
-```python
-from glider import *
-def query():
- placers = []
- #fetch a list of instructions
- instructions = Instructions().exec(600)
- for instruction in instructions:
- #check if instruction is a placeholder instruction
- if(instruction.is_placer()):
- placers.append(instruction)
- return placers
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "modifier onlyOwner() {\n require(owner() == _msgSender(),\"Ownable: caller is not the owner\");\n _;\n }",
- "sol_instruction": "_"
-}
-```
diff --git a/API/instruction/instruction.is_return.md b/API/instruction/instruction.is_return.md
deleted file mode 100644
index 39344c52..00000000
--- a/API/instruction/instruction.is_return.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: >-
- Returns true if the instruction is return instruction, otherwise returns
- false.
----
-
-# Instruction.is\_return()
-
-Query
-
-```python
-from glider import *
-def query():
- returns = []
- #fetch a list of instructions
- instructions = Instructions().exec(3)
- for instruction in instructions:
- #check if instruction is a return instruction
- if(instruction.is_return()):
- returns.append(instruction)
- return returns
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }",
- "sol_instruction": "return msg.sender"
-}
-```
diff --git a/API/instruction/instruction.is_start_loop.md b/API/instruction/instruction.is_start_loop.md
deleted file mode 100644
index da5cf0ba..00000000
--- a/API/instruction/instruction.is_start_loop.md
+++ /dev/null
@@ -1,40 +0,0 @@
----
-description: >-
- Returns true if the instruction is start_loop instruction, otherwise returns
- false.
----
-
-# Instruction.is\_start\_loop()
-
-Query
-
-```python
-from glider import *
-def query():
- start_loops = []
- #fetch a list of instructions
- instructions = Instructions().exec(530)
- for instruction in instructions:
- #check if instruction is a start_loop instruction
- if(instruction.is_start_loop()):
- start_loops.append(instruction)
- return start_loops
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Strings",
- "sol_function": "function toString(uint256 value) internal pure returns (string memory) {\n \n \n\n if (value == 0) {\n return \"0\";\n }\n uint256 temp = value;\n uint256 digits;\n while (temp != 0) {\n digits++;\n temp /= 10;\n }\n bytes memory buffer = new bytes(digits);\n while (value != 0) {\n digits -= 1;\n buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));\n value /= 10;\n }\n return string(buffer);\n }",
- "sol_instruction": "while (temp != 0) {\n digits++;\n temp /= 10;\n }"
-}
-
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Strings",
- "sol_function": "function toString(uint256 value) internal pure returns (string memory) {\n \n \n\n if (value == 0) {\n return \"0\";\n }\n uint256 temp = value;\n uint256 digits;\n while (temp != 0) {\n digits++;\n temp /= 10;\n }\n bytes memory buffer = new bytes(digits);\n while (value != 0) {\n digits -= 1;\n buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));\n value /= 10;\n }\n return string(buffer);\n }",
- "sol_instruction": "while (value != 0) {\n digits -= 1;\n buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));\n value /= 10;\n }"
-}
-```
diff --git a/API/instruction/instruction.is_storage_read.md b/API/instruction/instruction.is_storage_read.md
deleted file mode 100644
index e79f0e51..00000000
--- a/API/instruction/instruction.is_storage_read.md
+++ /dev/null
@@ -1,37 +0,0 @@
----
-description: >-
- Returns True if the instruction is a storage read instruction, else returns
- False. A storage read instruction just reads the value of a state variable
- without making any changes to it
----
-
-# Instruction.is\_storage\_read()
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch a list of instructions
- instructions = Instructions().exec(1,36)
- for instruction in instructions:
- #print the source code of the instruction
- print(instruction.source_code())
- #prints True/False depending on whether the instruction is a storage read
- #instruction or not
- print(instruction.is_storage_read())
- return []
-```
-
-Output
-
-```json
-{"print_output":
- [
- "return _balances[owner]",
- "True"
- ]
-}
-```
-
-In the output above, the instruction only reads the \_balances mapping, hence True is returned
diff --git a/API/instruction/instruction.is_storage_write.md b/API/instruction/instruction.is_storage_write.md
deleted file mode 100644
index f3c377cd..00000000
--- a/API/instruction/instruction.is_storage_write.md
+++ /dev/null
@@ -1,37 +0,0 @@
----
-description: >-
- Returns True if the instruction is a storage write instruction, else returns
- False. A storage write instruction writes to the state variable of a contract
----
-
-# Instruction.is\_storage\_write()
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch a list of instructions
- instructions = Instructions().exec(2,21)
- for instruction in instructions:
- #print the source code of the instruction(Just to showcase the instruction too)
- print(instruction.source_code())
- #prints True/False depending on whether the instruction is a storage write instruction or not
- print(instruction.is_storage_write())
- return []
-```
-
-Output
-
-```json
-{"print_output":
- [
- "_owner = newOwner",
- "True",
- "emit OwnershipTransferred(oldOwner,newOwner)",
- "False"
- ]
-}
-```
-
-In the output above, the first instruction is a storage write instruction where the `_owner` state variable is written with the value of ``newOwner. Hence, the `is_storage_write()` returns `True` whereas for the second instruction it returns `False` as it does not write to any state variable``
diff --git a/API/instruction/instruction.is_throw.md b/API/instruction/instruction.is_throw.md
deleted file mode 100644
index 16e0ec46..00000000
--- a/API/instruction/instruction.is_throw.md
+++ /dev/null
@@ -1,36 +0,0 @@
----
-description: Returns True if the instruction is throw instruction, otherwise returns False.
----
-
-# Instruction.is\_throw()
-
-Query
-
-```python
-from glider import *
-def query():
- throws = []
- #fetch a list of instructions
- instructions = Instructions().exec(3)
- for instruction in instructions:
- #check if instruction is a throw instruction
- if(instruction.is_throw()):
- throws.append(instruction)
- #print the return value from is_throw()
- print(instruction.is_throw())
- return throws
-```
-
-Output
-
-```json
-{
- "print_output": [
- "False",
- "False",
- "False"
- ]
-}
-```
-
-The query could not find any throw instructions, hence it prints False
diff --git a/API/instruction/instruction.is_try.md b/API/instruction/instruction.is_try.md
deleted file mode 100644
index ff676200..00000000
--- a/API/instruction/instruction.is_try.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: >-
- Returns True if the instruction is Try instruction in a try-catch block,
- otherwise returns False.
----
-
-# Instruction.is\_try()
-
-Query
-
-```python
-from glider import *
-def query():
- tries = []
- #fetch a list of instructions
- instructions = Instructions().exec(150)
- for instruction in instructions:
- #check if instruction is a try instruction
- if(instruction.is_try()):
- tries.append(instruction)
- return tries
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function _checkOnERC721Received(\n address from,address to,uint256 tokenId,bytes memory _data\n ) private returns (bool) {\n if (to.isContract()) {\n try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {\n return retval == IERC721Receiver.onERC721Received.selector;\n } catch (bytes memory reason) {\n if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n assembly {\n revert(add(32,reason),mload(reason))\n }\n }\n }\n } else {\n return true;\n }\n }",
- "sol_instruction": "try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {\n return retval == IERC721Receiver.onERC721Received.selector;\n } catch (bytes memory reason) {\n if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n assembly {\n revert(add(32,reason),mload(reason))\n }\n }\n }"
-}
-```
diff --git a/API/instruction/instruction.next_block.md b/API/instruction/instruction.next_block.md
deleted file mode 100644
index 3279f558..00000000
--- a/API/instruction/instruction.next_block.md
+++ /dev/null
@@ -1,43 +0,0 @@
----
-description: >-
- Returns the list of instructions following the current instruction till the
- branching point.
----
-
-# Instruction.next\_block()
-
-Query
-
-```python
-from glider import *
-def query():
- instructions = Instructions().exec(1,19)
- return instructions[0].next_block()
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }",
- "sol_instruction": "address oldOwner = _owner"
-}
-
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }",
- "sol_instruction": "_owner = newOwner"
-}
-
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }",
- "sol_instruction": "emit OwnershipTransferred(oldOwner,newOwner)"
-}
-```
-
-The output shows that the query returns all the instructions in the \_setOwner() function
diff --git a/API/instruction/instruction.next_instruction.md b/API/instruction/instruction.next_instruction.md
deleted file mode 100644
index 50d694c1..00000000
--- a/API/instruction/instruction.next_instruction.md
+++ /dev/null
@@ -1,25 +0,0 @@
----
-description: Returns a list of immediate following instructions in the control flow graph.
----
-
-# Instruction.next\_instruction()
-
-Query
-
-```python
-from glider import *
-def query():
- instructions = Instructions().exec(1,19)
- return instructions[0].next_instruction()
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }",
- "sol_instruction": "address oldOwner = _owner"
-}
-```
diff --git a/API/instruction/instruction.next_instructions.md b/API/instruction/instruction.next_instructions.md
deleted file mode 100644
index 13bca907..00000000
--- a/API/instruction/instruction.next_instructions.md
+++ /dev/null
@@ -1,41 +0,0 @@
----
-description: >-
- Returns a list of all instructions following the current node in the control
- flow graph.
----
-
-# Instruction.next\_instructions()
-
-Query
-
-```python
-from glider import *
-def query():
- instructions = Instructions().exec(1,19)
- return instructions[0].next_instructions()
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }",
- "sol_instruction": "address oldOwner = _owner"
-}
-
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }",
- "sol_instruction": "_owner = newOwner"
-}
-
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }",
- "sol_instruction": "emit OwnershipTransferred(oldOwner,newOwner)"
-}
-```
diff --git a/API/instruction/instruction.previous_instruction.md b/API/instruction/instruction.previous_instruction.md
deleted file mode 100644
index c71e391d..00000000
--- a/API/instruction/instruction.previous_instruction.md
+++ /dev/null
@@ -1,25 +0,0 @@
----
-description: Returns a list of immediate previous instructions in the control flow graph.
----
-
-# Instruction.previous\_instruction()
-
-Query
-
-```python
-from glider import *
-def query():
- instructions = Instructions().exec(1,3)
- return instructions[0].previous_instruction()
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }",
- "sol_instruction": "{\n return msg.data;\n }"
-}
-```
diff --git a/API/instruction/instruction.previous_instructions.md b/API/instruction/instruction.previous_instructions.md
deleted file mode 100644
index 25700004..00000000
--- a/API/instruction/instruction.previous_instructions.md
+++ /dev/null
@@ -1,27 +0,0 @@
----
-description: >-
- Returns a list of the previous instructions of the current node in the control
- flow graph.
----
-
-# Instruction.previous\_instructions()
-
-Query
-
-```python
-from glider import *
-def query():
- instructions = Instructions().exec(1,20)
- return instructions[0].previous_instructions()
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function _setOwner(address newOwner) private {\n address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }",
- "sol_instruction": "{address oldOwner = _owner;\n _owner = newOwner;\n emit OwnershipTransferred(oldOwner,newOwner);\n }"
-}
-```
diff --git a/API/instruction/instruction.procedure_graph.md b/API/instruction/instruction.procedure_graph.md
deleted file mode 100644
index d23fadcc..00000000
--- a/API/instruction/instruction.procedure_graph.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Instruction.procedure\_graph
-
-Returns the instruction's parent function's procedure graph.
-
-Query
-
-```python
-from glider import *
-def query():
- node_instruction = []
- instructions = Instructions().exec(1)
- #get the procedure_graph object
- procedure_graph = instructions[0].procedure_graph
- #The procdure_graph has a property called all_nodes
- #which returns a list of all the nodes in the graph
- all_nodes = procedure_graph.all_nodes
- #return the instruction corresponding to the first node
- node_instruction.append(all_nodes[0].instruction)
- return node_instruction
-
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }",
- "sol_instruction": "{\n return msg.sender;\n }"
-}
-```
diff --git a/API/instruction/instruction.procedure_graph_node.md b/API/instruction/instruction.procedure_graph_node.md
deleted file mode 100644
index fa296543..00000000
--- a/API/instruction/instruction.procedure_graph_node.md
+++ /dev/null
@@ -1,28 +0,0 @@
----
-description: Returns corresponding node in procedure graph.
----
-
-# Instruction.procedure\_graph\_node
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch a list of instructions
- instructions = Instructions().exec(1,16)
- procedure_graph_node = instructions[0].procedure_graph_node
- #Return the instruction corresponding to the procedure_graph_node
- return [procedure_graph_node.instruction]
-```
-
-Output
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "function transferOwnership(address newOwner) public virtual onlyOwner {\n require(newOwner != address(0),\"Ownable: new owner is the zero address\");\n _setOwner(newOwner);\n }",
- "sol_instruction": "require(newOwner != address(0),\"Ownable: new owner is the zero address\")"
-}
-```
diff --git a/API/instruction/instruction.set_procedure_graph_node.md b/API/instruction/instruction.set_procedure_graph_node.md
deleted file mode 100644
index 764fba69..00000000
--- a/API/instruction/instruction.set_procedure_graph_node.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Instruction.set\_procedure\_graph\_node()
-
diff --git a/API/instruction/instruction.solidity_callee_names.md b/API/instruction/instruction.solidity_callee_names.md
deleted file mode 100644
index ebba09ee..00000000
--- a/API/instruction/instruction.solidity_callee_names.md
+++ /dev/null
@@ -1,33 +0,0 @@
----
-description: >-
- Returns the list of solidity function names that are called from the
- instruction. Returns a empty list if the instruction does not call any
- solidity function.
----
-
-# Instruction.solidity\_callee\_names()
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch a list of instructions
- instructions = Instructions().exec(2,16)
- for instruction in instructions:
- #print the names of solidity functions that are called from the instruction
- print(instruction.solidity_callee_names())
- return []
-```
-
-Output
-
-```json
-{"print_output":
- [
- "['require']",
- "[]"
- ]
-}
-```
-
diff --git a/API/instruction/instruction.source_code.md b/API/instruction/instruction.source_code.md
deleted file mode 100644
index 0a28624c..00000000
--- a/API/instruction/instruction.source_code.md
+++ /dev/null
@@ -1,27 +0,0 @@
----
-description: Returns the source code of the instruction
----
-
-# Instruction.source\_code()
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch a list of instructions
- instructions = Instructions().exec(1)
- #print the source code of the instruction
- print(instructions[0].source_code())
- return []
-```
-
-Output
-
-```json
-{
- "print_output": [
- "{\n return msg.sender;\n }"
- ]
-}
-```
diff --git a/API/instruction/instruction.source_lines.md b/API/instruction/instruction.source_lines.md
deleted file mode 100644
index 02c90521..00000000
--- a/API/instruction/instruction.source_lines.md
+++ /dev/null
@@ -1,27 +0,0 @@
----
-description: Returns the corresponding source line numbers of a instruction
----
-
-# Instruction.source\_lines()
-
-Query
-
-```python
-from glider import *
-def query():
- #fetch a list of instructions
- instructions = Instructions().exec(1)
- #print the corresponding source line numbers of the instruction
- print(instructions[0].source_lines())
- return []
-```
-
-Output
-
-```json
-{
- "print_output": [
- "[19, 20, 21]"
- ]
-}
-```
diff --git a/API/instructions/README.md b/API/instructions/README.md
deleted file mode 100644
index 83533bbb..00000000
--- a/API/instructions/README.md
+++ /dev/null
@@ -1,117 +0,0 @@
-# Instructions
-
-The aim of this class is to filter instructions with some properties.
-
-Bases: [Queryable](../queryable/)
-
-{% content-ref url="instructions.callees.md" %}
-[instructions.callees.md](instructions.callees.md)
-{% endcontent-ref %}
-
-{% content-ref url="../callable/callable.asm_instructions.md" %}
-[callable.asm\_instructions.md](../callable/callable.asm\_instructions.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.calls.md" %}
-[instructions.calls.md](instructions.calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.delegate_calls.md" %}
-[instructions.delegate\_calls.md](instructions.delegate\_calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.delegate_calls_from_assembly.md" %}
-[instructions.delegate\_calls\_from\_assembly.md](instructions.delegate\_calls\_from\_assembly.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.delegate_calls_non_assembly.md" %}
-[instructions.delegate\_calls\_non\_assembly.md](instructions.delegate\_calls\_non\_assembly.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.delegate_calls_non_assembly.md" %}
-[instructions.delegate\_calls\_non\_assembly.md](instructions.delegate\_calls\_non\_assembly.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.entry_points.md" %}
-[instructions.entry\_points.md](instructions.entry\_points.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.exec.md" %}
-[instructions.exec.md](instructions.exec.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.external_calls.md" %}
-[instructions.external\_calls.md](instructions.external\_calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.functions.md" %}
-[instructions.functions.md](instructions.functions.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.high_level_static_calls.md" %}
-[instructions.high\_level\_static\_calls.md](instructions.high\_level\_static\_calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.if_instructions.md" %}
-[instructions.if\_instructions.md](instructions.if\_instructions.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.internal_calls.md" %}
-[instructions.internal\_calls.md](instructions.internal\_calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.library_calls.md" %}
-[instructions.library\_calls.md](instructions.library\_calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.list.md" %}
-[instructions.list.md](instructions.list.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.low_level_calls.md" %}
-[instructions.low\_level\_calls.md](instructions.low\_level\_calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.low_level_function_calls.md" %}
-[instructions.low\_level\_function\_calls.md](instructions.low\_level\_function\_calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.low_level_static_calls.md" %}
-[instructions.low\_level\_static\_calls.md](instructions.low\_level\_static\_calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.modifiers.md" %}
-[instructions.modifiers.md](instructions.modifiers.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.static_calls.md" %}
-[instructions.static\_calls.md](instructions.static\_calls.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.with_called_function_name.md" %}
-[instructions.with\_called\_function\_name.md](instructions.with\_called\_function\_name.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.with_called_function_name_not.md" %}
-[instructions.with\_called\_function\_name\_not.md](instructions.with\_called\_function\_name\_not.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.with_called_function_name_prefix.md" %}
-[instructions.with\_called\_function\_name\_prefix.md](instructions.with\_called\_function\_name\_prefix.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.with_called_function_name_suffix.md" %}
-[instructions.with\_called\_function\_name\_suffix.md](instructions.with\_called\_function\_name\_suffix.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.with_called_function_signature.md" %}
-[instructions.with\_called\_function\_signature.md](instructions.with\_called\_function\_signature.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.with_db_id.md" %}
-[instructions.with\_db\_id.md](instructions.with\_db\_id.md)
-{% endcontent-ref %}
-
-{% content-ref url="instructions.with_ids.md" %}
-[instructions.with\_ids.md](instructions.with\_ids.md)
-{% endcontent-ref %}
diff --git a/API/instructions/instructions.asm_instructions.md b/API/instructions/instructions.asm_instructions.md
deleted file mode 100644
index d600f41b..00000000
--- a/API/instructions/instructions.asm_instructions.md
+++ /dev/null
@@ -1,46 +0,0 @@
-# Instructions.asm\_instructions()
-
-**`asm_instructions`**`() →` [`Instructions`](./)
-
-Returns an [Instructions](./) object for the assembly instructions.
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of assembly instructions
- instructions = Instructions().asm_instructions().exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function _checkOnERC721Received(
- address from,address to,uint256 tokenId,bytes memory _data
- ) private returns (bool) {
- if (to.isContract()) {
- try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {
- return retval == IERC721Receiver.onERC721Received.selector;
- } catch (bytes memory reason) {
- if (reason.length == 0) {
- revert("ERC721: transfer to non ERC721Receiver implementer");
- } else {
- assembly {
- revert(add(32,reason),mload(reason))
- }
- }
- }
- } else {
- return true;
- }
- }",
- "sol_instruction": "assembly {
- revert(add(32,reason),mload(reason))
- }"
-}Add
-```
diff --git a/API/instructions/instructions.callees.md b/API/instructions/instructions.callees.md
deleted file mode 100644
index 2cbb2c1b..00000000
--- a/API/instructions/instructions.callees.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Instructions.CALLEES
-
diff --git a/API/instructions/instructions.calls.md b/API/instructions/instructions.calls.md
deleted file mode 100644
index ffe315e8..00000000
--- a/API/instructions/instructions.calls.md
+++ /dev/null
@@ -1,34 +0,0 @@
-# Instructions.calls()
-
-**calls**() → [Instructions](./)
-
-Returns an [Instructions](./) object for the call instructions.
-
-## Return type
-
-→ [Instructions](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of call instructions
- instructions = Instructions().calls().exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": "constructor() {
- _setOwner(_msgSender());
- }",
- "sol_instruction": "_setOwner(_msgSender())"
-}
-```
-
-This example returns the call instruction to the `_setOwner()` private function.
diff --git a/API/instructions/instructions.delegate_calls.md b/API/instructions/instructions.delegate_calls.md
deleted file mode 100644
index dc8024d2..00000000
--- a/API/instructions/instructions.delegate_calls.md
+++ /dev/null
@@ -1,37 +0,0 @@
-# Instructions.delegate\_calls()
-
-**`delegate_calls`**`() →` [`Instructions`](./)
-
-Returns a list of all delegate call instructions.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a lis of delegatecall instructions
- instructions = Instructions().delegate_calls().exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Address",
- "sol_function": "function functionDelegateCall(
- address target,bytes memory data,string memory errorMessage
- ) internal returns (bytes memory) {
- require(isContract(target),"Address: delegate call to non-contract");
-
- (bool success,bytes memory returndata) = target.delegatecall(data);
- return verifyCallResult(success,returndata,errorMessage);
- }",
- "sol_instruction": "(bool success,bytes memory returndata) = target.delegatecall(data)"
-}
-```
diff --git a/API/instructions/instructions.delegate_calls_from_assembly.md b/API/instructions/instructions.delegate_calls_from_assembly.md
deleted file mode 100644
index be5c4c1d..00000000
--- a/API/instructions/instructions.delegate_calls_from_assembly.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Instructions.delegate\_calls\_from\_assembly()
-
diff --git a/API/instructions/instructions.delegate_calls_non_assembly.md b/API/instructions/instructions.delegate_calls_non_assembly.md
deleted file mode 100644
index 24711245..00000000
--- a/API/instructions/instructions.delegate_calls_non_assembly.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Instructions.delegate\_calls\_non\_assembly()
-
diff --git a/API/instructions/instructions.entry_points.md b/API/instructions/instructions.entry_points.md
deleted file mode 100644
index ae8dafff..00000000
--- a/API/instructions/instructions.entry_points.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# Instructions.entry\_points()
-
-**`entry_points`**`() →` [`Instructions`](./)
-
-Returns an [Instructions](./) object for the entry\_point instructions.
-
-The [Instructions](./) object returned includes all entry points to functions.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of entry point instructions
- instructions = Instructions().entry_points().exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }",
- "sol_instruction": "{
- return msg.sender;
- }"
-}
-```
-
-As this returns the entry point to the function, the "sol\_instruction" field contains the function body.
diff --git a/API/instructions/instructions.exec.md b/API/instructions/instructions.exec.md
deleted file mode 100644
index 96e63fe5..00000000
--- a/API/instructions/instructions.exec.md
+++ /dev/null
@@ -1,46 +0,0 @@
-# Instructions.exec()
-
-**`exec`**`(`_`limit_count: int = 0`_`,`` `_`offset_count: int = 0`_`) → List[`[`Instruction`](../instruction/)`]`
-
-Executes the formed query and returns the list of [Instruction](../instruction/) objects.
-
-`limit_count` is the number of instructions to query, while `offset_count` is the offset applied to the results returned. For example with `offset_count` = 2, will return `limit_count` instructions starting from the 3rd instructions.
-
-## Return type
-
-`→ List[`[`Instruction`](../instruction/)`]`
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of instructions
- instructions = Instructions().exec(2)
-
- return instructions
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }",
- "sol_instruction": "{
- return msg.sender;
- }"
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }",
- "sol_instruction": "return msg.sender"
- }
-]
-```
diff --git a/API/instructions/instructions.external_calls.md b/API/instructions/instructions.external_calls.md
deleted file mode 100644
index b0649ce3..00000000
--- a/API/instructions/instructions.external_calls.md
+++ /dev/null
@@ -1,41 +0,0 @@
-# Instructions.external\_calls()
-
-**`external_calls`**`() →` [`Instructions`](./)
-
-Returns the [Instructions](./) object withe all the external call instructions.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of external call instructions
- instructions = Instructions().external_calls().exec(1,100)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x5C3975C1F017833156806435cF123F8Cb0651F5f",
- "contract_name": "VaultGovernance",
- "sol_function": "function deployVault(
- address[] memory vaultTokens,bytes memory options,address owner
- ) public virtual returns (IVault vault,uint256 nft) {
- require(initialized,Exceptions.INITIALIZATION);
- IProtocolGovernance protocolGovernance = IProtocolGovernance(_internalParams.protocolGovernance);
- require(protocolGovernance.permissionless() || protocolGovernance.isAdmin(msg.sender),Exceptions.PERMISSIONLESS_OR_ADMIN);
- vault = factory.deployVault(vaultTokens,options);
- address nftOwner = owner;
- nft = _internalParams.registry.registerVault(address(vault),nftOwner);
- vault.initialize(nft);
- emit DeployedVault(tx.origin,msg.sender,vaultTokens,options,nftOwner,address(vault),nft);
- }",
- "sol_instruction": "vault = factory.deployVault(vaultTokens,options)"
-}
-```
diff --git a/API/instructions/instructions.functions.md b/API/instructions/instructions.functions.md
deleted file mode 100644
index 8156cf06..00000000
--- a/API/instructions/instructions.functions.md
+++ /dev/null
@@ -1,33 +0,0 @@
-# Instructions.functions()
-
-**`functions`**`() →` [`Functions`](../functions/)
-
-Returns [Functions](../functions/) object for the functions of the instructions. Note: The function will return parent functions for those instructions that belong to a function, not to a modifier. To get parent modifiers of that instructions use `modifiers()` method.
-
-## Return type
-
-`→` [`Functions`](../functions/)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of functions of the first 2 instructions
- instructions = Instructions().functions().exec(2)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": "function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }"
-}
-```
-
-This returns only one function as the first 2 instructions both belong to it.
diff --git a/API/instructions/instructions.high_level_static_calls.md b/API/instructions/instructions.high_level_static_calls.md
deleted file mode 100644
index ec2991b9..00000000
--- a/API/instructions/instructions.high_level_static_calls.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Instructions.high\_level\_static\_calls()
-
diff --git a/API/instructions/instructions.if_instructions.md b/API/instructions/instructions.if_instructions.md
deleted file mode 100644
index 95505136..00000000
--- a/API/instructions/instructions.if_instructions.md
+++ /dev/null
@@ -1,63 +0,0 @@
-# Instructions.if\_instructions()
-
-**`if_instructions()`**` ``→` [`Instructions`](./)
-
-Returns an [Instructions](./) object for the if instructions.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of if statement instructions
- instructions = Instructions().if_instructions().exec(2)
-
- return instructions
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function tokenURI(uint256 tokenId) public view virtual override returns (string memory) {
- require(_exists(tokenId),"ERC721Metadata: URI query for nonexistent token");
-
- string memory baseURI = _baseURI();
- return bytes(baseURI).length > 0 ? string(abi.encodePacked(baseURI,tokenId.toString())) : "";
- }",
- "sol_instruction": "return bytes(baseURI).length > 0 ? string(abi.encodePacked(baseURI,tokenId.toString())) : """
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function _checkOnERC721Received(
- address from,address to,uint256 tokenId,bytes memory _data
- ) private returns (bool) {
- if (to.isContract()) {
- try IERC721Receiver(to).onERC721Received(_msgSender(),from,tokenId,_data) returns (bytes4 retval) {
- return retval == IERC721Receiver.onERC721Received.selector;
- } catch (bytes memory reason) {
- if (reason.length == 0) {
- revert("ERC721: transfer to non ERC721Receiver implementer");
- } else {
- assembly {
- revert(add(32,reason),mload(reason))
- }
- }
- }
- } else {
- return true;
- }
- }",
- "sol_instruction": "to.isContract()"
- }
-]
-```
-
-Note that the ternary operator is included as well.
diff --git a/API/instructions/instructions.internal_calls.md b/API/instructions/instructions.internal_calls.md
deleted file mode 100644
index c503d788..00000000
--- a/API/instructions/instructions.internal_calls.md
+++ /dev/null
@@ -1,4 +0,0 @@
-# Instructions.internal\_calls()
-
-
-
diff --git a/API/instructions/instructions.library_calls.md b/API/instructions/instructions.library_calls.md
deleted file mode 100644
index 12460040..00000000
--- a/API/instructions/instructions.library_calls.md
+++ /dev/null
@@ -1,37 +0,0 @@
-# Instructions.library\_calls()
-
-**`library_calls`**`() →` [`Instructions`](./)
-
-Returns a list of all library call instructions.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of library calls instructions instructions
- instructions = Instructions().library_calls().exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": "function tokenURI(uint256 tokenId) public view virtual override returns (string memory) {
- require(_exists(tokenId),"ERC721Metadata: URI query for nonexistent token");
-
- string memory baseURI = _baseURI();
- return bytes(baseURI).length > 0 ? string(abi.encodePacked(baseURI,tokenId.toString())) : "";
- }",
- "sol_instruction": "return bytes(baseURI).length > 0 ? string(abi.encodePacked(baseURI,tokenId.toString())) : """
-}
-```
-
-This outputs the call to the `toString()` library function.
diff --git a/API/instructions/instructions.list.md b/API/instructions/instructions.list.md
deleted file mode 100644
index 9ac2f16e..00000000
--- a/API/instructions/instructions.list.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Instructions.list()
-
-**`list`**`() → List[`[`Instruction`](../instruction/)`]`
-
-Returns the list of [Instruction](../instruction/) objects.
-
-## Return type
-
-`→ List[`[`Instruction`](../instruction/)`]`
diff --git a/API/instructions/instructions.low_level_calls.md b/API/instructions/instructions.low_level_calls.md
deleted file mode 100644
index b74b96d0..00000000
--- a/API/instructions/instructions.low_level_calls.md
+++ /dev/null
@@ -1,37 +0,0 @@
-# Instructions.low\_level\_calls()
-
-**`low_level_calls`**`() →` [`Instructions`](./)
-
-Returns a list of the functions calls instructions.
-
-Only solidity's low level `call()` is returned.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of low level calls instructions instructions
- instructions = Instructions().low_level_calls().exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Address",
- "sol_function": function sendValue(address payable recipient,uint256 amount) internal {
- require(address(this).balance >= amount,"Address: insufficient balance");
-
- (bool success,) = recipient.call{value: amount}("");
- require(success,"Address: unable to send value,recipient may have reverted");
- },
- "sol_instruction": (bool success,) = recipient.call{value: amount}("")
-}
-```
diff --git a/API/instructions/instructions.low_level_function_calls.md b/API/instructions/instructions.low_level_function_calls.md
deleted file mode 100644
index bf8c6b79..00000000
--- a/API/instructions/instructions.low_level_function_calls.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Instructions.low\_level\_function\_calls()
-
diff --git a/API/instructions/instructions.low_level_static_calls.md b/API/instructions/instructions.low_level_static_calls.md
deleted file mode 100644
index 9fbdc7fe..00000000
--- a/API/instructions/instructions.low_level_static_calls.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Instructions.low\_level\_static\_calls()
-
diff --git a/API/instructions/instructions.modifiers.md b/API/instructions/instructions.modifiers.md
deleted file mode 100644
index 2c5d32ca..00000000
--- a/API/instructions/instructions.modifiers.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Instructions.modifiers()
-
-**`modifiers`**`() →` [`Modifiers`](../modifiers/)
-
-Returns [Modifiers](../modifiers/) object for the modifiers of the instructions. Note: The function will return parent modifiers for those instructions that belong to a modifier, not to a function. To get parent functions of that instructions use `functions()` method.
-
-## Return type
-
-`→` [`Modifiers`](../modifiers/)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of modifiers of the instructions
- instructions = Instructions().modifiers().exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_modifier": modifier onlyOwner() {
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-}
-```
diff --git a/API/instructions/instructions.static_calls.md b/API/instructions/instructions.static_calls.md
deleted file mode 100644
index 83f86955..00000000
--- a/API/instructions/instructions.static_calls.md
+++ /dev/null
@@ -1,39 +0,0 @@
-# Instructions.static\_calls()
-
-**`static_calls`**`() →` [`Instructions`](./)
-
-Returns a list of all static call instructions.
-
-Only solidity's low level `staticcall()` is returned.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of low level static calls instructions
- instructions = Instructions().static_calls().exec(10)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Address",
- "sol_function": function functionStaticCall(
- address target,bytes memory data,string memory errorMessage
- ) internal view returns (bytes memory) {
- require(isContract(target),"Address: static call to non-contract");
-
- (bool success,bytes memory returndata) = target.staticcall(data);
- return verifyCallResult(success,returndata,errorMessage);
- },
- "sol_instruction": (bool success,bytes memory returndata) = target.staticcall(data)
-}
-```
diff --git a/API/instructions/instructions.with_called_function_name.md b/API/instructions/instructions.with_called_function_name.md
deleted file mode 100644
index 21c80dd7..00000000
--- a/API/instructions/instructions.with_called_function_name.md
+++ /dev/null
@@ -1,43 +0,0 @@
-# Instructions.with\_called\_function\_name()
-
-**`with_called_function_name`**`(`_`name: str`_`,`` `_`sensitivity: bool = True`_`) →` [`Instructions`](./)
-
-Adds a filter to get instructions that call a function with the given name.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of intructions that call the "transfer" function
- instructions = Instructions().with_called_function_name("transfer").exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x1d8B9d1334575b5cB265E63D2A5AD0E70Fe46A2B",
- "contract_name": "Core",
- "sol_function": function allocateRing(address to,uint256 amount)
- external
- override
- onlyGovernor
- {
- IERC20 _ring = ring;
- require(
- _ring.balanceOf(address(this)) >= amount,"Core: Not enough Ring"
- );
-
- _ring.transfer(to,amount);
-
- emit RingAllocation(to,amount);
- },
- "sol_instruction": _ring.transfer(to,amount)
-}
-```
diff --git a/API/instructions/instructions.with_called_function_name_not.md b/API/instructions/instructions.with_called_function_name_not.md
deleted file mode 100644
index fe6a08cc..00000000
--- a/API/instructions/instructions.with_called_function_name_not.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Instructions.with\_called\_function\_name\_not()
-
-**`with_called_function_name_not`**`(`_`name: str`_`,`` `_`sensitivity: bool = True`_`) →` [`Instructions`](./)
-
-Adds a filter to get instructions that don't call a function with the given name.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of intructions that don't call the "transfer" function
- instructions = Instructions().with_called_function_name_not("transfer").exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": constructor() {
- _setOwner(_msgSender());
- },
- "sol_instruction": _setOwner(_msgSender())
-}
-```
diff --git a/API/instructions/instructions.with_called_function_name_prefix.md b/API/instructions/instructions.with_called_function_name_prefix.md
deleted file mode 100644
index a1484cad..00000000
--- a/API/instructions/instructions.with_called_function_name_prefix.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Instructions.with\_called\_function\_name\_prefix()
-
-**`with_called_function_name_prefix`**`(`_`prefix: str`_`,`` `_`sensitivity: bool = True`_`) →` [`Instructions`](./)
-
-Adds a filter to get instructions that call a function whose name has the given prefix.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of intructions that call a function or modifier with prefix "only"
- instructions = Instructions().with_called_function_name_prefix("only").exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Ownable",
- "sol_function": function renounceOwnership() public virtual onlyOwner {
- _setOwner(address(0));
- },
- "sol_instruction": onlyOwner
-}
-```
diff --git a/API/instructions/instructions.with_called_function_name_suffix.md b/API/instructions/instructions.with_called_function_name_suffix.md
deleted file mode 100644
index 53234ddc..00000000
--- a/API/instructions/instructions.with_called_function_name_suffix.md
+++ /dev/null
@@ -1,34 +0,0 @@
-# Instructions.with\_called\_function\_name\_suffix()
-
-**`with_called_function_name_suffix`**`(`_`prefix: str`_`,`` `_`sensitivity: bool = True`_`) →` [`Instructions`](./)
-
-Adds a filter to get instructions that call a function whose name has the given suffix.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of intructions that call a function or modifier with suffix "From"
- instructions = Instructions().with_called_function_name_suffix("From").exec(1)
-
- return instructions
-```
-
-Output:
-
-```json
-{
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "ERC721",
- "sol_function": function safeTransferFrom(
- address from,address to,uint256 tokenId
- ) public virtual override {
- safeTransferFrom(from,to,tokenId,"");
- },
- "sol_instruction": safeTransferFrom(from,to,tokenId,"")
-}
-```
diff --git a/API/instructions/instructions.with_called_function_signature.md b/API/instructions/instructions.with_called_function_signature.md
deleted file mode 100644
index fd0690da..00000000
--- a/API/instructions/instructions.with_called_function_signature.md
+++ /dev/null
@@ -1,9 +0,0 @@
-# Instructions.with\_called\_function\_signature()
-
-**`with_called_function_signature`**`(`_`signature: str`_`) →` [`Instructions`](./)
-
-Adds a filter to get instructions that call a function with the given signature.
-
-## Return type
-
-`→` [`Instructions`](./)
diff --git a/API/instructions/instructions.with_db_id.md b/API/instructions/instructions.with_db_id.md
deleted file mode 100644
index d2c1cdb3..00000000
--- a/API/instructions/instructions.with_db_id.md
+++ /dev/null
@@ -1,58 +0,0 @@
-# Instructions.with\_db\_id()
-
-**`with_db_id`**`(`_`db_id: str`_`) →` [`Instruction`](./)
-
-Adds a filter to get instruction having given db id.
-
-## Return type
-
-`→` [`Instruction`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of instructions
- instructions = Instructions().exec(10)
-
- # Get the id of the first instruction
- db_id = instructions[0].db_id
-
- # Print the code of the first instruction for comparison
- print(instructions[0].source_code())
-
- # Get the instruction with given id
- instruction = Instructions().with_db_id(db_id)
-
- return [instruction]
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": function _msgSender() internal view virtual returns (address) {
-
- return msg.sender;
-
- },
- "sol_instruction": {
-
- return msg.sender;
-
- }
- },
- {
- "print_output": [
- "{
-
- return msg.sender;
-
- }"
- ]
- }
-]
-```
diff --git a/API/instructions/instructions.with_ids.md b/API/instructions/instructions.with_ids.md
deleted file mode 100644
index dd4739d2..00000000
--- a/API/instructions/instructions.with_ids.md
+++ /dev/null
@@ -1,74 +0,0 @@
-# Instructions.with\_ids()
-
-**`with_ids`**`(`_`ids: List[str]`_`) →` [`Instructions`](./)
-
-Adds a filter to get instructions having ids from the given list.
-
-## Return type
-
-`→` [`Instructions`](./)
-
-```python
-from glider import *
-
-def query():
- # Fetch a list of instructions
- instructions = Instructions().exec(10)
-
- # Define list of instruction ids
- db_ids = []
-
- # Add ids of 2 first instructions to list
- for instruction in instructions[:2]:
- # get id of instruction
- db_ids.append(instruction.db_id)
-
- # Print the instruction code for comparison
- print(instruction.source_code())
-
- # Get the instruction with given ids
- instructions = Instructions().with_ids(db_ids).exec()
-
- return instructions
-```
-
-Output:
-
-```json
-[
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": function _msgSender() internal view virtual returns (address) {
-
- return msg.sender;
-
- },
- "sol_instruction": {
-
- return msg.sender;
-
- }
- },
- {
- "contract": "0x798AcB51D8FBc97328835eE2027047a8B54533AD",
- "contract_name": "Context",
- "sol_function": function _msgSender() internal view virtual returns (address) {
-
- return msg.sender;
-
- },
- "sol_instruction": return msg.sender
- },
- {
- "print_output": [
- "{
-
- return msg.sender;
-
- }",
- "return msg.sender"
- ]
- }
-]
-```
diff --git a/API/methodprop/README.md b/API/methodprop/README.md
deleted file mode 100644
index 50835cca..00000000
--- a/API/methodprop/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# MethodProp
-
diff --git a/API/methodprop/methodprop.external.md b/API/methodprop/methodprop.external.md
deleted file mode 100644
index 7886cae6..00000000
--- a/API/methodprop/methodprop.external.md
+++ /dev/null
@@ -1,61 +0,0 @@
-# MethodProp.EXTERNAL
-
-This property will filter for functions that are exposed in a smart contract and marked with an access level of external. Adding this property filter to the query will add a filter for all functions with this property.
-
-Functions declared with external access are callable from an external third party.
-
-In solidity a function that has access set as external will have a similar signature to this one:
-
-```solidity
-function myFunction(uint256 investAmount) external {}
-```
-
-An example of such a query would be:
-
-```python
-from glider import *
-def query():
- props_any = [MethodProp.EXTERNAL]
- functions = Functions()\
- .with_one_property(props_any)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"IERC165"
-"sol_function":solidity
-function supportsInterface(bytes4 interfaceId) external view returns (bool);
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"IERC721"
-"sol_function":solidity
-function supportsInterface(bytes4 interfaceId) external view returns (bool);
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"IERC721"
-"sol_function":solidity
-function balanceOf(address owner) external view returns (uint256 balance);
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"IERC721"
-"sol_function":solidity
-function ownerOf(uint256 tokenId) external view returns (address owner);
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"IERC721"
-"sol_function":solidity
-function safeTransferFrom(
- address from,address to,uint256 tokenId
- ) external;
-}
-```
diff --git a/API/methodprop/methodprop.has_args.md b/API/methodprop/methodprop.has_args.md
deleted file mode 100644
index 02448b07..00000000
--- a/API/methodprop/methodprop.has_args.md
+++ /dev/null
@@ -1,69 +0,0 @@
-# MethodProp.HAS\_ARGS
-
-The HAS\_ARGS property adds a filter to either include or exclude functions that have arguments in their signature.
-
-An example of a function with a signature would be
-
-```solidity
-function myFunction(uint256 investAmount){}
-```
-
-In the example below the query will filter out all functions that have arguments and only return those functions with no arguments in their signature
-
-```python
-from glider import *
-
-def query():
- props_excluded = [MethodProp.HAS_ARGS]
-
- functions = Functions()\
- .without_properties(props_excluded)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-"sol_function":solidity
-function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-"sol_function":solidity
-function _msgData() internal view virtual returns (bytes calldata) {
- return msg.data;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _msgData() internal view virtual returns (bytes calldata) {
- return msg.data;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-constructor() {
- _setOwner(_msgSender());
- }
-}
-```
diff --git a/API/methodprop/methodprop.has_callees.md b/API/methodprop/methodprop.has_callees.md
deleted file mode 100644
index 86be59b6..00000000
--- a/API/methodprop/methodprop.has_callees.md
+++ /dev/null
@@ -1,65 +0,0 @@
-# MethodProp.HAS\_CALLEES
-
-The property HAS\_CALLEES is used to add a filter to include or exclude functions that have functions that call them from within the same contract.
-
-An example of a query which will filter for functions that have callees is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.HAS_CALLEES]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-constructor() {
- _setOwner(_msgSender());
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function renounceOwnership() public virtual onlyOwner {
- _setOwner(address(0));
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function transferOwnership(address newOwner) public virtual onlyOwner {
- require(newOwner != address(0),"Ownable: new owner is the zero address");
- _setOwner(newOwner);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC165"
-"sol_function":solidity
-function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
- return interfaceId == type(IERC165).interfaceId;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-function supportsInterface(bytes4 interfaceId) public view virtual override(ERC165,IERC165) returns (bool) {
- return
- interfaceId == type(IERC721).interfaceId ||
- interfaceId == type(IERC721Metadata).interfaceId ||
- super.supportsInterface(interfaceId);
- }
-}
-```
diff --git a/API/methodprop/methodprop.has_errors.md b/API/methodprop/methodprop.has_errors.md
deleted file mode 100644
index 187ee771..00000000
--- a/API/methodprop/methodprop.has_errors.md
+++ /dev/null
@@ -1,116 +0,0 @@
-# MethodProp.HAS\_ERRORS
-
-The HAS\_ERRORS property is used to add a filter to include or exclude functions that revert with an error.
-
-In solidity a smart contract a developer can define custom errors which are then called when an error is raised.
-
-An example of such a contract would be as below:
-
-```solidity
-// SPDX-License-Identifier: MIT
-pragma solidity ^0.8.20;
-
-contract Example {
- error myCustomError(uint256 requestedAmount,address caller);
-
- function collectAllowance(address caller,uint256 requestedAmount) public returns (bool success){
- //just revert to show how errors work
- revert myCustomError(requestedAmount,caller);
- }
-
-}
-```
-
-An example of a query which would filter to include functions that use errors is
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.HAS_ERRORS]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0xe90baa4A5fD4fE25443d27e6E2883350a0E67855"
-"contract_name":string"Bulker"
-"sol_function":solidity
-function invoke(uint[] calldata actions,bytes[] calldata data) external payable {
- if (actions.length != data.length) revert InvalidArgument();
-
- uint unusedEth = msg.value;
- for (uint i = 0; i < actions.length; ) {
- uint action = actions[i];
- if (action == ACTION_SUPPLY_ASSET) {
- (address to,address asset,uint amount) = abi.decode(data[i],(address,address,uint));
- supplyTo(to,asset,amount);
- } else if (action == ACTION_SUPPLY_ETH) {
- (address to,uint amount) = abi.decode(data[i],(address,uint));
- unusedEth -= amount;
- supplyEthTo(to,amount);
- } else if (action == ACTION_TRANSFER_ASSET) {
- (address to,address asset,uint amount) = abi.decode(data[i],(address,address,uint));
- transferTo(to,asset,amount);
- } else if (action == ACTION_WITHDRAW_ASSET) {
- (address to,address asset,uint amount) = abi.decode(data[i],(address,address,uint));
- withdrawTo(to,asset,amount);
- } else if (action == ACTION_WITHDRAW_ETH) {
- (address to,uint amount) = abi.decode(data[i],(address,uint));
- withdrawEthTo(to,amount);
- }
- unchecked { i++; }
- }
-
-
- if (unusedEth > 0) {
- (bool success,) = msg.sender.call{ value: unusedEth }("");
- if (!success) revert FailedToSendEther();
- }
- }
-}
-"root":{3 items
-"contract":string"0xe90baa4A5fD4fE25443d27e6E2883350a0E67855"
-"contract_name":string"Bulker"
-"sol_function":solidity
-function withdrawEthTo(address to,uint amount) internal {
- amount = getAmount(weth,amount);
- CometInterface(comet).withdrawFrom(msg.sender,address(this),weth,amount);
- IWETH9(weth).withdraw(amount);
- (bool success,) = to.call{ value: amount }("");
- if (!success) revert FailedToSendEther();
- }
-}
-"root":{3 items
-"contract":string"0xe90baa4A5fD4fE25443d27e6E2883350a0E67855"
-"contract_name":string"CometMath"
-"sol_function":solidity
-function safe64(uint n) internal pure returns (uint64) {
- if (n > type(uint64).max) revert InvalidUInt64();
- return uint64(n);
- }
-}
-"root":{3 items
-"contract":string"0xe90baa4A5fD4fE25443d27e6E2883350a0E67855"
-"contract_name":string"CometMath"
-"sol_function":solidity
-function safe104(uint n) internal pure returns (uint104) {
- if (n > type(uint104).max) revert InvalidUInt104();
- return uint104(n);
- }
-}
-"root":{3 items
-"contract":string"0xe90baa4A5fD4fE25443d27e6E2883350a0E67855"
-"contract_name":string"CometMath"
-"sol_function":solidity
-function safe128(uint n) internal pure returns (uint128) {
- if (n > type(uint128).max) revert InvalidUInt128();
- return uint128(n);
- }
-}
-```
diff --git a/API/methodprop/methodprop.has_modifiers.md b/API/methodprop/methodprop.has_modifiers.md
deleted file mode 100644
index 37ff7858..00000000
--- a/API/methodprop/methodprop.has_modifiers.md
+++ /dev/null
@@ -1,90 +0,0 @@
-# MethodProp.HAS\_MODIFIERS
-
-In solidity a smart contract can define modifiers which can be called before the code of the function is run.
-
-An example of such a contract would be as below:
-
-```solidity
-// SPDX-License-Identifier: MIT
-pragma solidity ^0.8.20;
-
-contract Example {
- modifier onlyOwner {
- require(msg.sender == owner);
- _;
- }
-
- //This function has the onlyOwner modifier
- function setNewOwner(address newOwner) public onlyOwner {
- owner = newOwner;
- }
-
-}
-```
-
-
-
-An example of a query which adds a filter to select functions which have modifiers is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.HAS_MODIFIERS]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function renounceOwnership() public virtual onlyOwner {
- _setOwner(address(0));
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function transferOwnership(address newOwner) public virtual onlyOwner {
- require(newOwner != address(0),"Ownable: new owner is the zero address");
- _setOwner(newOwner);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"LTP"
-"sol_function":solidity
-function renounceOwnership() public virtual onlyOwner {
- _setOwner(address(0));
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"LTP"
-"sol_function":solidity
-function transferOwnership(address newOwner) public virtual onlyOwner {
- require(newOwner != address(0),"Ownable: new owner is the zero address");
- _setOwner(newOwner);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"LTP"
-"sol_function":solidity
-function mint() external onlyMinterOrOwner returns (uint256) {
- _mint(address(this),nextId);
- flowRates[nextId] = _testFlowRate;
-
- uint256 ltpId = nextId;
- nextId += 1;
- return ltpId;
- }
-}
-```
diff --git a/API/methodprop/methodprop.has_state_variables_read.md b/API/methodprop/methodprop.has_state_variables_read.md
deleted file mode 100644
index 70644502..00000000
--- a/API/methodprop/methodprop.has_state_variables_read.md
+++ /dev/null
@@ -1,66 +0,0 @@
-# MethodProp.HAS\_STATE\_VARIABLES\_READ
-
-If a variable is declared outside of a function within a smart contract it is considered a STATE variable. Such variable's values are stored on the blockchain, for instance account balances and admin addresses.
-
-An example of a query which will select functions that read STATE variables from within the code of the function is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.HAS_STATE_VARIABLES_READ]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function owner() public view virtual returns (address) {
- return _owner;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _setOwner(address newOwner) private {
- address oldOwner = _owner;
- _owner = newOwner;
- emit OwnershipTransferred(oldOwner,newOwner);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-function balanceOf(address owner) public view virtual override returns (uint256) {
- require(owner != address(0),"ERC721: balance query for the zero address");
- return _balances[owner];
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-function ownerOf(uint256 tokenId) public view virtual override returns (address) {
- address owner = _owners[tokenId];
- require(owner != address(0),"ERC721: owner query for nonexistent token");
- return owner;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-function name() public view virtual override returns (string memory) {
- return _name;
- }
-}
-```
diff --git a/API/methodprop/methodprop.has_state_variables_written.md b/API/methodprop/methodprop.has_state_variables_written.md
deleted file mode 100644
index 0a95f8a4..00000000
--- a/API/methodprop/methodprop.has_state_variables_written.md
+++ /dev/null
@@ -1,85 +0,0 @@
-# MethodProp.HAS\_STATE\_VARIABLES\_WRITTEN
-
-If a variable is declared outside of a function within a smart contract it is considered a STATE variable. Such variable's value are stored permanently on the blockchain, for instance account balances and admin addresses.
-
-An example of a query which will select functions that modify STATE variables from within the code of the function is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.HAS_STATE_VARIABLES_WRITTEN]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _setOwner(address newOwner) private {
- address oldOwner = _owner;
- _owner = newOwner;
- emit OwnershipTransferred(oldOwner,newOwner);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-constructor(string memory name_,string memory symbol_) {
- _name = name_;
- _symbol = symbol_;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-function setApprovalForAll(address operator,bool approved) public virtual override {
- require(operator != _msgSender(),"ERC721: approve to caller");
-
- _operatorApprovals[_msgSender()][operator] = approved;
- emit ApprovalForAll(_msgSender(),operator,approved);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-function _mint(address to,uint256 tokenId) internal virtual {
- require(to != address(0),"ERC721: mint to the zero address");
- require(!_exists(tokenId),"ERC721: token already minted");
-
- _beforeTokenTransfer(address(0),to,tokenId);
-
- _balances[to] += 1;
- _owners[tokenId] = to;
-
- emit Transfer(address(0),to,tokenId);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-function _burn(uint256 tokenId) internal virtual {
- address owner = ERC721.ownerOf(tokenId);
-
- _beforeTokenTransfer(owner,address(0),tokenId);
-
-
- _approve(address(0),tokenId);
-
- _balances[owner] -= 1;
- delete _owners[tokenId];
-
- emit Transfer(owner,address(0),tokenId);
- }
-}
-```
diff --git a/API/methodprop/methodprop.internal.md b/API/methodprop/methodprop.internal.md
deleted file mode 100644
index 5f9fe05f..00000000
--- a/API/methodprop/methodprop.internal.md
+++ /dev/null
@@ -1,67 +0,0 @@
-# MethodProp.INTERNAL
-
-This property will filter for functions that are exposed in a smart contract and marked with an access level of internal.
-
-Functions declared with internal access are callable only from functions inside of the smart contract and all child contracts. In solidity a function that has access set as internal will have a similar signature to this one:
-
-```solidity
-function myFunction(uint256 investAmount) internal {}
-```
-
-An example of a query that would filter for functions that are marked as internal is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.INTERNAL]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-"sol_function":solidity
-function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-"sol_function":solidity
-function _msgData() internal view virtual returns (bytes calldata) {
- return msg.data;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _msgData() internal view virtual returns (bytes calldata) {
- return msg.data;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-constructor() {
- _setOwner(_msgSender());
- }
-}
-```
diff --git a/API/methodprop/methodprop.is_constructor.md b/API/methodprop/methodprop.is_constructor.md
deleted file mode 100644
index bad6af77..00000000
--- a/API/methodprop/methodprop.is_constructor.md
+++ /dev/null
@@ -1,76 +0,0 @@
-# MethodProp.IS\_CONSTRUCTOR
-
-A constructor function in a smart contract is called when the smart contract is instantiated, and can be used to set initial values of state variables within the contract
-
-An example of a smart contract with a constructor is:
-
-```solidity
-contract Example {
-
- constructor(){
- owner = msg.sender;
- }
-
- }
-```
-
-An example of a query which will select constructor functions is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.IS_CONSTRUCTOR]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-constructor() {
- _setOwner(_msgSender());
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-constructor(string memory name_,string memory symbol_) {
- _name = name_;
- _symbol = symbol_;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721URIStorage"
-"sol_function":solidity
-constructor(string memory name_,string memory symbol_) {
- _name = name_;
- _symbol = symbol_;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"LTP"
-"sol_function":solidity
-constructor(string memory name_,string memory symbol_) {
- _name = name_;
- _symbol = symbol_;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"LTP"
-"sol_function":solidity
-constructor() {
- _setOwner(_msgSender());
- }
-}
-```
diff --git a/API/methodprop/methodprop.is_global.md b/API/methodprop/methodprop.is_global.md
deleted file mode 100644
index 39766892..00000000
--- a/API/methodprop/methodprop.is_global.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# MethodProp.IS\_GLOBAL
-
diff --git a/API/methodprop/methodprop.is_payable.md b/API/methodprop/methodprop.is_payable.md
deleted file mode 100644
index b79cf973..00000000
--- a/API/methodprop/methodprop.is_payable.md
+++ /dev/null
@@ -1,78 +0,0 @@
-# MethodProp.IS\_PAYABLE
-
-In a smart contract a function can be marked as payable. This means that the function can accept the native token of the chain as a payment value.
-
-An example of a payable function is
-
-```solidity
-function depositETH() external payable {
- depositor[msg.sender].balance = msg.value;
-}
-```
-
-An example of a query which would select all payable functions is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.IS_PAYABLE]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"LTP"
-"sol_function":solidity
-function issueNft(address to,uint256 tokenId,uint256 amount,string memory tokenURI) external payable onlyMinterOrOwner {
-
- require(to != address(this),"Issue to a new address");
- require(ownerOf(tokenId) == address(this),"NFT already issued");
-
-
-
- _setTokenURI(nextId,tokenURI);
- this.safeTransferFrom(address(this),to,tokenId);
- emit NFTIssued(tokenId,to,tokenURI);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"LTP"
-"sol_function":solidity
-function withdrawETH() external payable onlyOwner {
- payable(msg.sender).transfer(address(this).balance);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"LTP"
-"sol_function":solidity
-function paymegas() external payable {
-
- }
-}
-"root":{3 items
-"contract":string"0x561ae3768ee95987b355c287f985f2838f01e632"
-"contract_name":string"IUniswapV2Router01"
-"sol_function":solidity
-function addLiquidityETH(
- address token,uint amountTokenDesired,uint amountTokenMin,uint amountETHMin,address to,uint deadline
- ) external payable returns (uint amountToken,uint amountETH,uint liquidity);
-}
-"root":{3 items
-"contract":string"0x561ae3768ee95987b355c287f985f2838f01e632"
-"contract_name":string"IUniswapV2Router01"
-"sol_function":solidity
-function swapExactETHForTokens(uint amountOutMin,address[] calldata path,address to,uint deadline)
- external
- payable
- returns (uint[] memory amounts);
-}
-```
diff --git a/API/methodprop/methodprop.is_pure.md b/API/methodprop/methodprop.is_pure.md
deleted file mode 100644
index f51a9def..00000000
--- a/API/methodprop/methodprop.is_pure.md
+++ /dev/null
@@ -1,120 +0,0 @@
-# MethodProp.IS\_PURE
-
-In a smart contract a function can be declared that neither reads nor modifies any state variables. These functions can be marked as PURE functions
-
-An example of such a function is:
-
-```solidity
-function add(uint256 a,uint256 b) external pure returns uint256 {
- return a + b;
-}
-```
-
-An example of a query that would select functions marked as pure functions is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.IS_PURE]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"IConstantFlowAgreementV1"
-"sol_function":solidity
-function agreementType() external override pure returns (bytes32) {
- return keccak256("org.superfluid-finance.agreements.ConstantFlowAgreement.v1");
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Address"
-"sol_function":solidity
-function verifyCallResult(
- bool success,bytes memory returndata,string memory errorMessage
- ) internal pure returns (bytes memory) {
- if (success) {
- return returndata;
- } else {
-
- if (returndata.length > 0) {
-
-
- assembly {
- let returndata_size := mload(returndata)
- revert(add(32,returndata),returndata_size)
- }
- } else {
- revert(errorMessage);
- }
- }
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Strings"
-"sol_function":solidity
-function toString(uint256 value) internal pure returns (string memory) {
-
-
-
- if (value == 0) {
- return "0";
- }
- uint256 temp = value;
- uint256 digits;
- while (temp != 0) {
- digits++;
- temp /= 10;
- }
- bytes memory buffer = new bytes(digits);
- while (value != 0) {
- digits -= 1;
- buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));
- value /= 10;
- }
- return string(buffer);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Strings"
-"sol_function":solidity
-function toHexString(uint256 value) internal pure returns (string memory) {
- if (value == 0) {
- return "0x00";
- }
- uint256 temp = value;
- uint256 length = 0;
- while (temp != 0) {
- length++;
- temp >>= 8;
- }
- return toHexString(value,length);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Strings"
-"sol_function":solidity
-function toHexString(uint256 value,uint256 length) internal pure returns (string memory) {
- bytes memory buffer = new bytes(2 * length + 2);
- buffer[0] = "0";
- buffer[1] = "x";
- for (uint256 i = 2 * length + 1; i > 1; --i) {
- buffer[i] = _HEX_SYMBOLS[value & 0xf];
- value >>= 4;
- }
- require(value == 0,"Strings: hex length insufficient");
- return string(buffer);
- }
-}
-```
diff --git a/API/methodprop/methodprop.is_view.md b/API/methodprop/methodprop.is_view.md
deleted file mode 100644
index 341aaf1f..00000000
--- a/API/methodprop/methodprop.is_view.md
+++ /dev/null
@@ -1,69 +0,0 @@
-# MethodProp.IS\_VIEW
-
-In a smart contract a function can be declared that will not modify any state variable values. These functions are marked as VIEW functions
-
-An example of a view function is:
-
-```solidity
-function getOwner() external view returns address {
- return owner;
-}
-```
-
-An example of a query that would select only VIEW functions is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.IS_VIEW]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-"sol_function":solidity
-function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-"sol_function":solidity
-function _msgData() internal view virtual returns (bytes calldata) {
- return msg.data;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _msgData() internal view virtual returns (bytes calldata) {
- return msg.data;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function owner() public view virtual returns (address) {
- return _owner;
- }
-}
-```
diff --git a/API/methodprop/methodprop.private.md b/API/methodprop/methodprop.private.md
deleted file mode 100644
index 46f399bf..00000000
--- a/API/methodprop/methodprop.private.md
+++ /dev/null
@@ -1,67 +0,0 @@
-# MethodProp.PRIVATE
-
-This property will filter for functions that are exposed in a smart contract and marked with an access level of private
-
-Functions declared with private access are callable only from functions inside of the smart contract and not by any child contracts. In solidity a function that has access set as private will have a similar signature to this one:
-
-```solidity
-function myFunction(uint256 investAmount) private {}
-```
-
-An example of a query that would filter for functions that are marked as internal is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.PRIVATE]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-"sol_function":solidity
-function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Context"
-"sol_function":solidity
-function _msgData() internal view virtual returns (bytes calldata) {
- return msg.data;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _msgSender() internal view virtual returns (address) {
- return msg.sender;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function _msgData() internal view virtual returns (bytes calldata) {
- return msg.data;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-constructor() {
- _setOwner(_msgSender());
- }
-}
-```
diff --git a/API/methodprop/methodprop.public.md b/API/methodprop/methodprop.public.md
deleted file mode 100644
index 0f74181a..00000000
--- a/API/methodprop/methodprop.public.md
+++ /dev/null
@@ -1,69 +0,0 @@
-# MethodProp.PUBLIC
-
-This property will filter for functions that are exposed in a smart contract and marked with an access level of public. Adding this property filter to the query will add a filter for all functions with this property.
-
-Functions declared with public access are callable from an external third party and from within the smart contract functions.
-
-```solidity
-function myFunction(uint256 investAmount) public {}
-```
-
-An example of a query that would filter for functions that are marked as public is:
-
-```python
-from glider import *
-def query():
- props_included = [MethodProp.PUBLIC]
- functions = Functions()\
- .with_all_properties(props_included)\
- .exec(5)
-
- return functions
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function owner() public view virtual returns (address) {
- return _owner;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function renounceOwnership() public virtual onlyOwner {
- _setOwner(address(0));
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_function":solidity
-function transferOwnership(address newOwner) public virtual onlyOwner {
- require(newOwner != address(0),"Ownable: new owner is the zero address");
- _setOwner(newOwner);
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC165"
-"sol_function":solidity
-function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
- return interfaceId == type(IERC165).interfaceId;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"ERC721"
-"sol_function":solidity
-constructor(string memory name_,string memory symbol_) {
- _name = name_;
- _symbol = symbol_;
- }
-}
-```
diff --git a/API/modifier/README.md b/API/modifier/README.md
deleted file mode 100644
index 5d5bc1e7..00000000
--- a/API/modifier/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Modifier
-
diff --git a/API/modifier/modifier.functions.md b/API/modifier/modifier.functions.md
deleted file mode 100644
index ccc47d1b..00000000
--- a/API/modifier/modifier.functions.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# Modifier.functions()
-
-Returns the [Functions](../functions/) object for the functions which have the modifier.
-
-## Return type
-
-→ [Functions](../functions/)
-
-An example to retrieve the functions object for the modifier is as below
-
-```python
-from glider import *
-def query():
- modifierlist = Modifiers()\
- .name_prefix("check")\
- .exec(5)
-
- results = []
-
- for modd in modifierlist:
- for funcs in modd.functions().list():
- results.append(funcs)
-
- return results
-```
-
-## Output
diff --git a/API/modifier/modifier.placer_instructions.md b/API/modifier/modifier.placer_instructions.md
deleted file mode 100644
index e419feb0..00000000
--- a/API/modifier/modifier.placer_instructions.md
+++ /dev/null
@@ -1,94 +0,0 @@
-# Modifier.placer\_instructions()
-
-Returns placeholder [instructions](../instruction/) of the [modifier](./).
-
-## Return type
-
-→ List\[[Instruction](../instruction/)]
-
-An example of a query which can analyze placeholder instructions is:
-
-```python
-from glider import *
-def query():
- modifierlist = Modifiers()\
- .name_prefix("check")\
- .exec(5)
-
- results = []
-
- for modd in modifierlist:
- for placers in modd.placer_instructions():
- results.append(placers)
-
- return results
-
-```
-
-## Output
-
-```json
-"root":{4 items
-"contract":string"0x2D76FCCC67645A61794cB65584c5e89A9f3945Ed"
-"contract_name":string"CommonBudgetApproval"
-"sol_function":solidity
-modifier checkTime(uint256 id) {
- require(block.timestamp <= transactions[id].deadline,"Transaction expired");
- require(block.timestamp >= startTime,"Budget usage period not started");
- if(endTime != 0) {
- require(block.timestamp < endTime,"Budget usage period has ended");
- }
- _;
- }
-"sol_instruction":solidity
-_
-}
-"root":{4 items
-"contract":string"0x2D76FCCC67645A61794cB65584c5e89A9f3945Ed"
-"contract_name":string"TransferERC20BudgetApproval"
-"sol_function":solidity
-modifier checkTime(uint256 id) {
- require(block.timestamp <= transactions[id].deadline,"Transaction expired");
- require(block.timestamp >= startTime,"Budget usage period not started");
- if(endTime != 0) {
- require(block.timestamp < endTime,"Budget usage period has ended");
- }
- _;
- }
-"sol_instruction":solidity
-_
-}
-"root":{4 items
-"contract":string"0xa4bE27abf18D18f3F86Ec2EE3039880402f89aE8"
-"contract_name":string"KCGStaking"
-"sol_function":solidity
-modifier checkStakingTimeframe(uint256 timeframe) {
- require(timeframe == FOURTY_FIVE_DAYS || timeframe == NINETY_DAYS || timeframe == ONE_HUNDREDS_EIGHTY_DAYS,"invalid staking timeframe");
- _;
- }
-"sol_instruction":solidity
-_
-}
-"root":{4 items
-"contract":string"0x254f997e66eEdB84b6e5833ca494bE90Eb0330e6"
-"contract_name":string"BetaBank"
-"sol_function":solidity
-modifier checkPID(address _owner,uint _pid) {
- require(_pid < nextPositionIds[_owner],'BetaBank/checkPID');
- _;
- }
-"sol_instruction":solidity
-_
-}
-"root":{4 items
-"contract":string"0x07ac2e0fa5944c81f66dc54d3d54d58f04bb5d10"
-"contract_name":string"KCGStaking"
-"sol_function":solidity
-modifier checkArgsLength(uint256[] calldata tokenIds,uint256[] calldata timeframe) {
- require(tokenIds.length == timeframe.length,"token ids and time frame must be same length");
- _;
- }
-"sol_instruction":solidity
-_
-}
-```
diff --git a/API/modifiers/README.md b/API/modifiers/README.md
deleted file mode 100644
index 0af7da53..00000000
--- a/API/modifiers/README.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-description: class api.functions.Modifiers
----
-
-# Modifiers
-
-Bases: [callables](../callables/ "mention")
diff --git a/API/modifiers/modifiers.contracts.md b/API/modifiers/modifiers.contracts.md
deleted file mode 100644
index a453192e..00000000
--- a/API/modifiers/modifiers.contracts.md
+++ /dev/null
@@ -1,44 +0,0 @@
-# Modifiers.contracts()
-
-Returns Contracts object for the contracts of the modifiers.
-
-## Return type
-
-→ [Contracts](../contracts/)
-
-An example to retrieve the contracts that the modifiers called `onlyOwner` are used within is as below
-
-```python
-from glider import *
-def query():
- contractlist = Modifiers()\
- .with_name("onlyOwner")\
- .contracts()\
- .exec(5)
- return contractlist
-```
-
-## Output
-
-```json
-"root":{2 items
-"contract":string"0x6f48d31eB35c9f52ef336aBf12f46E78F18fD7Fb"
-"contract_name":string"Ownable"
-}
-"root":{2 items
-"contract":string"0x6f48d31eB35c9f52ef336aBf12f46E78F18fD7Fb"
-"contract_name":string"VRF_Pizza_RNG"
-}
-"root":{2 items
-"contract":string"0x31a13db822593aafef324ef2655e31b05b2577c0"
-"contract_name":string"Ownable"
-}
-"root":{2 items
-"contract":string"0x31a13db822593aafef324ef2655e31b05b2577c0"
-"contract_name":string"TestCoin"
-}
-"root":{2 items
-"contract":string"0xe5fA13058EdE558a2bFA675043f175148858A5F6"
-"contract_name":string"Ownable"
-}
-```
diff --git a/API/modifiers/modifiers.exec.md b/API/modifiers/modifiers.exec.md
deleted file mode 100644
index 5672c2ef..00000000
--- a/API/modifiers/modifiers.exec.md
+++ /dev/null
@@ -1,94 +0,0 @@
-# Modifiers.exec()
-
-Executes the formed query and returns a list of the [Modifier](../modifier/) objects.
-
-## Return type
-
-→ List\[[Modifier](../modifier/)]
-
-It accepts two integer parameters the first one is `limit_count` which limits the count of the returned results and the second is `offset_count` which sets the offset from which the result set must be returned.
-
- In specific in the Modifiers scenario it will action a query to search for modifiers.
-
-In solidity a smart contract can define modifiers which can be called before the code of the function is run.
-
-An example of such a contract would be as below:
-
-```solidity
-// SPDX-License-Identifier: MIT
-pragma solidity ^0.8.20;
-
-contract Example {
- modifier onlyOwner {
- require(msg.sender == owner);
- _;
- }
-
- //This function has the onlyOwner modifier
- function setNewOwner(address newOwner) public onlyOwner {
- owner = newOwner;
- }
-
-}
-```
-
-An example of a query which adds a filter to select functions which have modifiers with the name "onlyOwner" is:
-
-```python
-from glider import *
-def query():
- modifierlist = Modifiers()\
- .with_name("onlyOwner")\
- .exec(5)
- return modifierlist
-```
-
-## Output
-
-```json
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"Ownable"
-"sol_modifier":solidity
-modifier onlyOwner() {
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-}
-"root":{3 items
-"contract":string"0x798AcB51D8FBc97328835eE2027047a8B54533AD"
-"contract_name":string"LTP"
-"sol_modifier":solidity
-modifier onlyOwner() {
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-}
-"root":{3 items
-"contract":string"0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2"
-"contract_name":string"Owned"
-"sol_modifier":solidity
-modifier onlyOwner {
- _onlyOwner();
- _;
- }
-}
-"root":{3 items
-"contract":string"0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2"
-"contract_name":string"RewardsDistributionRecipient"
-"sol_modifier":solidity
-modifier onlyOwner {
- _onlyOwner();
- _;
- }
-}
-"root":{3 items
-"contract":string"0x0c16f70dBBbCB63a81de06eB2fc2ABE4a19f89F2"
-"contract_name":string"Pausable"
-"sol_modifier":solidity
-modifier onlyOwner {
- _onlyOwner();
- _;
- }
-}
-```
diff --git a/API/modifiers/modifiers.instructions.md b/API/modifiers/modifiers.instructions.md
deleted file mode 100644
index 150f0f84..00000000
--- a/API/modifiers/modifiers.instructions.md
+++ /dev/null
@@ -1,86 +0,0 @@
-# Modifiers.instructions()
-
-Returns Instructions object for the instructions of the modifiers.
-
-## Return type
-
-→ [Instructions](../instructions/)
-
-An example to retrieve the instructions used by the modifiers with the name `onlyOwner` is as below
-
-```python
-from glider import *
-def query():
- instructionlist = Modifiers()\
- .with_name("onlyOwner")\
- .instructions()\
- .exec(5)
- return instructionlist
-```
-
-## Output
-
-```json
-"root":{4 items
-"contract":string"0x6f48d31eB35c9f52ef336aBf12f46E78F18fD7Fb"
-"contract_name":string"Ownable"
-"sol_function":solidity
-modifier onlyOwner() {
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-"sol_instruction":solidity
-{
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-}
-"root":{4 items
-"contract":string"0x6f48d31eB35c9f52ef336aBf12f46E78F18fD7Fb"
-"contract_name":string"Ownable"
-"sol_function":solidity
-modifier onlyOwner() {
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-"sol_instruction":solidity
-require(owner() == _msgSender(),"Ownable: caller is not the owner")
-}
-"root":{4 items
-"contract":string"0x6f48d31eB35c9f52ef336aBf12f46E78F18fD7Fb"
-"contract_name":string"Ownable"
-"sol_function":solidity
-modifier onlyOwner() {
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-"sol_instruction":solidity
-_
-}
-"root":{4 items
-"contract":string"0x6f48d31eB35c9f52ef336aBf12f46E78F18fD7Fb"
-"contract_name":string"VRF_Pizza_RNG"
-"sol_function":solidity
-modifier onlyOwner() {
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-"sol_instruction":solidity
-{
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-}
-"root":{4 items
-"contract":string"0x6f48d31eB35c9f52ef336aBf12f46E78F18fD7Fb"
-"contract_name":string"VRF_Pizza_RNG"
-"sol_function":solidity
-modifier onlyOwner() {
- require(owner() == _msgSender(),"Ownable: caller is not the owner");
- _;
- }
-"sol_instruction":solidity
-require(owner() == _msgSender(),"Ownable: caller is not the owner")
-}
-
-```
diff --git a/API/modifiers/modifiers.list.md b/API/modifiers/modifiers.list.md
deleted file mode 100644
index 78987464..00000000
--- a/API/modifiers/modifiers.list.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Modifiers.list()
-
-Returns the list of [Modifier](../modifier/) objects.
-
-## Return type
-
-→ List\[[Modifier](../modifier/)]
diff --git a/API/newvariableinstruction.md b/API/newvariableinstruction.md
deleted file mode 100644
index 328ebcd3..00000000
--- a/API/newvariableinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# NewVariableInstruction
-
diff --git a/API/noneobject/README.md b/API/noneobject/README.md
deleted file mode 100644
index d568aefb..00000000
--- a/API/noneobject/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# NoneObject
-
diff --git a/API/noneobject/noneobject.dump_into_json.md b/API/noneobject/noneobject.dump_into_json.md
deleted file mode 100644
index 63190200..00000000
--- a/API/noneobject/noneobject.dump_into_json.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# NoneObject.dump\_into\_json()
-
diff --git a/API/noneobject/noneobject.instructions.md b/API/noneobject/noneobject.instructions.md
deleted file mode 100644
index 24bb3bed..00000000
--- a/API/noneobject/noneobject.instructions.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# NoneObject.instructions()
-
diff --git a/API/noneobject/noneobject.name.md b/API/noneobject/noneobject.name.md
deleted file mode 100644
index e43d5f6f..00000000
--- a/API/noneobject/noneobject.name.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# NoneObject.name()
-
diff --git a/API/otherentrypointinstruction.md b/API/otherentrypointinstruction.md
deleted file mode 100644
index 01f95616..00000000
--- a/API/otherentrypointinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# OtherEntrypointInstruction
-
diff --git a/API/placeholderinstruction.md b/API/placeholderinstruction.md
deleted file mode 100644
index 7a36f39d..00000000
--- a/API/placeholderinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# PlaceholderInstruction
-
diff --git a/API/queryable/README.md b/API/queryable/README.md
deleted file mode 100644
index 61a5ca87..00000000
--- a/API/queryable/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Queryable
-
diff --git a/API/queryable/queryable.query_aggregator.md b/API/queryable/queryable.query_aggregator.md
deleted file mode 100644
index 582d925f..00000000
--- a/API/queryable/queryable.query_aggregator.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Queryable.query\_aggregator
-
diff --git a/API/returninstruction.md b/API/returninstruction.md
deleted file mode 100644
index 6d5e4f3b..00000000
--- a/API/returninstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# ReturnInstruction
-
diff --git a/API/startloopinstruction.md b/API/startloopinstruction.md
deleted file mode 100644
index ec572a9e..00000000
--- a/API/startloopinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# StartLoopInstruction
-
diff --git a/API/throwinstruction.md b/API/throwinstruction.md
deleted file mode 100644
index ce9e8f88..00000000
--- a/API/throwinstruction.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# ThrowInstruction
-
diff --git a/API/tryinstruction/README.md b/API/tryinstruction/README.md
deleted file mode 100644
index 45dd1ecd..00000000
--- a/API/tryinstruction/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# TryInstruction
-
diff --git a/API/tryinstruction/tryinstruction.get_block_instructions.md b/API/tryinstruction/tryinstruction.get_block_instructions.md
deleted file mode 100644
index a77763fe..00000000
--- a/API/tryinstruction/tryinstruction.get_block_instructions.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# TryInstruction.get\_block\_instructions()
-
diff --git a/API/variable/README.md b/API/variable/README.md
deleted file mode 100644
index d9f17075..00000000
--- a/API/variable/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable
-
diff --git a/API/variable/variable.contract.md b/API/variable/variable.contract.md
deleted file mode 100644
index 629e776b..00000000
--- a/API/variable/variable.contract.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.contract()
-
diff --git a/API/variable/variable.get_getter.md b/API/variable/variable.get_getter.md
deleted file mode 100644
index 9c3e7eac..00000000
--- a/API/variable/variable.get_getter.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.get\_getter()
-
diff --git a/API/variable/variable.is_constant.md b/API/variable/variable.is_constant.md
deleted file mode 100644
index 6de3290c..00000000
--- a/API/variable/variable.is_constant.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.is\_constant()
-
diff --git a/API/variable/variable.is_immutable.md b/API/variable/variable.is_immutable.md
deleted file mode 100644
index 46740f01..00000000
--- a/API/variable/variable.is_immutable.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.is\_immutable()
-
diff --git a/API/variable/variable.is_internal.md b/API/variable/variable.is_internal.md
deleted file mode 100644
index c9b3cb16..00000000
--- a/API/variable/variable.is_internal.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.is\_internal()
-
diff --git a/API/variable/variable.is_private.md b/API/variable/variable.is_private.md
deleted file mode 100644
index c0756558..00000000
--- a/API/variable/variable.is_private.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.is\_private()
-
diff --git a/API/variable/variable.is_public.md b/API/variable/variable.is_public.md
deleted file mode 100644
index 8ea96a65..00000000
--- a/API/variable/variable.is_public.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.is\_public()
-
diff --git a/API/variable/variable.name.md b/API/variable/variable.name.md
deleted file mode 100644
index 5520332d..00000000
--- a/API/variable/variable.name.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.name()
-
diff --git a/API/variable/variable.properties-1.md b/API/variable/variable.properties-1.md
deleted file mode 100644
index 8c1f6db9..00000000
--- a/API/variable/variable.properties-1.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.properties()
-
diff --git a/API/variable/variable.properties.md b/API/variable/variable.properties.md
deleted file mode 100644
index 4112cb88..00000000
--- a/API/variable/variable.properties.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.Properties
-
diff --git a/API/variable/variable.source_code.md b/API/variable/variable.source_code.md
deleted file mode 100644
index ffcbd1b9..00000000
--- a/API/variable/variable.source_code.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.source\_code()
-
diff --git a/API/variable/variable.type.md b/API/variable/variable.type.md
deleted file mode 100644
index 4a2b8e59..00000000
--- a/API/variable/variable.type.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variable.type()
-
diff --git a/API/variableprop/README.md b/API/variableprop/README.md
deleted file mode 100644
index cbc657e0..00000000
--- a/API/variableprop/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# VariableProp
-
diff --git a/API/variableprop/variableprop.constant.md b/API/variableprop/variableprop.constant.md
deleted file mode 100644
index 02894901..00000000
--- a/API/variableprop/variableprop.constant.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# VariableProp.CONSTANT
-
-Enum for variables declared as CONSTANT
diff --git a/API/variableprop/variableprop.immutable.md b/API/variableprop/variableprop.immutable.md
deleted file mode 100644
index 609fa23d..00000000
--- a/API/variableprop/variableprop.immutable.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# VariableProp.IMMUTABLE
-
-Enum for variables declared as IMMUTABLE
diff --git a/API/variableprop/variableprop.internal.md b/API/variableprop/variableprop.internal.md
deleted file mode 100644
index 83ddac22..00000000
--- a/API/variableprop/variableprop.internal.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# VariableProp.INTERNAL
-
-Enum for variables declared as INTERNAL
diff --git a/API/variableprop/variableprop.private.md b/API/variableprop/variableprop.private.md
deleted file mode 100644
index 47b939bf..00000000
--- a/API/variableprop/variableprop.private.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# VariableProp.PRIVATE
-
-Enum for variables declared as PRIVATE
diff --git a/API/variableprop/variableprop.public.md b/API/variableprop/variableprop.public.md
deleted file mode 100644
index 9634555b..00000000
--- a/API/variableprop/variableprop.public.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# VariableProp.PUBLIC
-
-Enum for variables declared as PUBLIC
diff --git a/API/variables/README.md b/API/variables/README.md
deleted file mode 100644
index 5df2cd1b..00000000
--- a/API/variables/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# Variables
-
diff --git a/API/variables/variables.exec.md b/API/variables/variables.exec.md
deleted file mode 100644
index 84bb233b..00000000
--- a/API/variables/variables.exec.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# Variables.exec()
-
-Executes the formed query and returns a list of [Variable](../variable/) objects.
-
-## Return type
-
-→ List\[[Variable](../variable/)]
-
-It accepts two integer parameters the first one is `limit_count` which limits the count of the returned results and the second is `offset_count` which sets the offset from which the result set must be returned.
-
-An example to retrieve varaibles is as below
-
-```python
-from glider import *
-def query():
- variablelist = Variables()\
- .exec(5)
- return variablelist
-```
-
-## Output
-
-```json
-```
diff --git a/API/variables/variables.list.md b/API/variables/variables.list.md
deleted file mode 100644
index 5c9571aa..00000000
--- a/API/variables/variables.list.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Variables.list()
-
-Returns a list of all [variables](./).
-
-## Return type
-
-→ List\[[Variable](../variable/)]
diff --git a/API/variables/variables.with_all_properties.md b/API/variables/variables.with_all_properties.md
deleted file mode 100644
index 90c76313..00000000
--- a/API/variables/variables.with_all_properties.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# Variables.with\_all\_properties()
-
-Adds a filter to get [variables](./) that have all given [properties](../variable/variable.properties.md).
-
-## Return type
-
-→ [Variables](./)
-
-An example to retrieve all variables with the properties of [VariableProp.CONSTANT](../variableprop/variableprop.constant.md) and [VariableProp.PUBLIC](../variableprop/variableprop.public.md) is as below
-
-```python
-from glider import *
-def query():
- variablelist = Variables()\
- .with_all_properties([VariableProp.CONSTANT,VariableProp.PUBLIC])\
- .exec(5)
- return variablelist
-```
-
-## Output
-
-```json
-```
diff --git a/API/variables/variables.with_name.md b/API/variables/variables.with_name.md
deleted file mode 100644
index 11c29373..00000000
--- a/API/variables/variables.with_name.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# Variables.with\_name()
-
-## Return type
-
-→ [Variables](./)
-
-An example to retrieve variables with the name `owner` is as below
-
-```python
-from glider import *
-def query():
- variablelist = Variables()\
- .with_name("owner")\
- .exec(5)
- return variablelist
-```
-
-## Output
-
-```json
-```
diff --git a/API/variables/variables.with_one_property.md b/API/variables/variables.with_one_property.md
deleted file mode 100644
index d84e19ac..00000000
--- a/API/variables/variables.with_one_property.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# Variables.with\_one\_property()
-
-Adds a filter to get [variables](./) that at least have one of the given [properties](../variable/variable.properties.md).
-
-## Return type
-
-→ [Variables](./)
-
-An example to retrieve all variables with the only property being [VariableProp.CONSTANT](../variableprop/variableprop.constant.md) is as below
-
-```python
-rom glider import *
-def query():
- variablelist = Variables()\
- .with_one_properties([VariableProp.PUBLIC])\
- .exec(5)
- return variablelist
-```
-
-## Output
-
-```json
-```
diff --git a/API/variables/variables.with_type.md b/API/variables/variables.with_type.md
deleted file mode 100644
index 65f86409..00000000
--- a/API/variables/variables.with_type.md
+++ /dev/null
@@ -1,23 +0,0 @@
-# Variables.with\_type()
-
-Adds a filter to get [variables](./) that have the given [type](../variable/variable.type.md).
-
-## Return type
-
-→ [Variables](./)
-
-Get a list of of variables based on the declared type
-
-```python
-from glider import *
-def query():
- variablelist = Variables()\
- .with_type("address")\
- .exec(5)
- return variablelist
-```
-
-## Output
-
-```json
-```