Exemple #1
0
        public void FlowAnalysis(FlowAnalysisContext fc)
        {
            if (ArgType == AType.Out)
            {
                var vr = Expr as VariableReference;
                if (vr != null)
                {
                    if (vr.VariableInfo != null)
                    {
                        fc.SetVariableAssigned(vr.VariableInfo);
                    }

                    return;
                }

                var fe = Expr as FieldExpr;
                if (fe != null)
                {
                    fe.SetFieldAssigned(fc);
                    return;
                }

                return;
            }

            Expr.FlowAnalysis(fc);
        }
Exemple #2
0
        public override void FlowAnalysis(FlowAnalysisContext fc)
        {
            base.FlowAnalysis(fc);

            var vr = target as VariableReference;

            if (vr != null)
            {
                if (vr.VariableInfo != null)
                {
                    fc.SetVariableAssigned(vr.VariableInfo);
                }

                return;
            }

            var fe = target as FieldExpr;

            if (fe != null)
            {
                fe.SetFieldAssigned(fc);
                return;
            }

            var pe = target as PropertyExpr;

            if (pe != null)
            {
                pe.SetBackingFieldAssigned(fc);
                return;
            }
        }
Exemple #3
0
        public void SetGeneratedFieldAssigned(FlowAnalysisContext fc)
        {
            if (variablesToInfer == null)
            {
                return;
            }

            foreach (var lv in variablesToInfer)
            {
                fc.SetVariableAssigned(lv.VariableInfo);
            }
        }
Exemple #4
0
		public override void FlowAnalysis (FlowAnalysisContext fc)
		{
			base.FlowAnalysis (fc);

			var vr = target as VariableReference;
			if (vr != null) {
				if (vr.VariableInfo != null)
					fc.SetVariableAssigned (vr.VariableInfo);

				return;
			}

			var fe = target as FieldExpr;
			if (fe != null) {
				fe.SetFieldAssigned (fc);
				return;
			}
		}
Exemple #5
0
		public void FlowAnalysis (FlowAnalysisContext fc)
		{
			if (ArgType == AType.Out) {
				var vr = Expr as VariableReference;
				if (vr != null) {
					if (vr.VariableInfo != null)
						fc.SetVariableAssigned (vr.VariableInfo);

					return;
				}

				var fe = Expr as FieldExpr;
				if (fe != null) {
					fe.SetFieldAssigned (fc);
					return;
				}

				return;
			}

			Expr.FlowAnalysis (fc);
		}