Apply the forward analysis v to self.

Property definitions

nitc :: saf_base $ AIfExpr :: accept_forward_analysis
	# Merge flow on if .. else constructs.
	redef fun accept_forward_analysis(v) do
		v.enter_visit(n_expr)
		var inset = v.current_inset
		var outset = v.current_outset

		if n_then != null then v.enter_visit(n_then)
		var then_outset = v.current_outset

		v.current_inset = inset
		v.current_outset = outset

		if n_else != null then
			v.enter_visit(n_else)
			outset = v.merge(then_outset, v.current_outset)
		else
			outset = v.merge(then_outset, v.current_inset)
		end
		v.current_inset = inset
		v.current_outset = outset
	end
src/saf/saf_base.nit:144,2--164,4

nitc :: saf_base $ ADoExpr :: accept_forward_analysis
	redef fun accept_forward_analysis(v) do accept_loop_forward_analysis(v)
src/saf/saf_base.nit:204,2--72

nitc :: saf_base $ AWhileExpr :: accept_forward_analysis
	redef fun accept_forward_analysis(v) do
		v.enter_visit(n_expr)
		accept_loop_forward_analysis(v)
	end
src/saf/saf_base.nit:219,2--222,4

nitc :: saf_base $ ALoopExpr :: accept_forward_analysis
	redef fun accept_forward_analysis(v) do accept_loop_forward_analysis(v)
src/saf/saf_base.nit:211,2--72

nitc :: saf_base $ AForExpr :: accept_forward_analysis
	redef fun accept_forward_analysis(v) do
		for n_group in n_groups do
			v.enter_visit(n_group.n_expr)
		end
		accept_loop_forward_analysis(v)
	end
src/saf/saf_base.nit:230,2--235,4