Microsoft.JScript.Class.PartiallyEvaluate C# (CSharp) Method

PartiallyEvaluate() private method

private PartiallyEvaluate ( ) : AST
return AST
      internal override AST PartiallyEvaluate(){
        if (this.isAlreadyPartiallyEvaluated) return this;
        this.isAlreadyPartiallyEvaluated = true;
        this.IsExpando(); //Evaluate the custom attributes, run up the inheritance chain and add expando property if necessary
        this.classob.SetParent(new WithObject(this.enclosingScope, this.superIR, true));
        Globals.ScopeStack.Push(this.classob);
        try{
          this.body.PartiallyEvaluate();
          if (this.implicitDefaultConstructor != null)
            this.implicitDefaultConstructor.PartiallyEvaluate();
        }finally{
          Globals.ScopeStack.Pop();
        }
        foreach (JSMemberField field in this.fields) field.CheckOverloadsForDuplicates();
        this.CheckIfValidExtensionOfSuperType();
        this.CheckThatAllAbstractSuperClassMethodsAreImplemented();
        return this;
      }