Entry point to generate the entire contract infrastructure.

Once this method is called we must call the do_weaving_contracts method (see it for more information).

Property definitions

nitc :: contracts $ AModule :: do_contracts
	# Entry point to generate the entire contract infrastructure.
	# Once this method is called we must call the `do_weaving_contracts` method (see it for more information).
	fun do_contracts(toolcontext: ToolContext) do
		var ast_builder = new ASTBuilder(mmodule.as(not null))
		#
		var contract_visitor = new ContractsVisitor(toolcontext, toolcontext.modelbuilder.identified_modules.first, self, ast_builder)
		contract_visitor.enter_visit(self)
	end
src/contracts.nit:54,2--61,4