internal bool IsExpando(){
if (this.hasAlreadyBeenAskedAboutExpando)
return this.isExpando;
if (this.customAttributes != null){
this.customAttributes.PartiallyEvaluate();
if (this.customAttributes.GetAttribute(Typeob.Expando) != null)
this.generateCodeForExpando = this.isExpando = true;
}
bool superClassIsExpando = false;
this.GetIRForSuperType();
ClassScope csc = this.superIR as ClassScope;
if (csc != null){
csc.owner.PartiallyEvaluate();
if (csc.owner.IsExpando())
this.isExpando = superClassIsExpando = true;
}else{
if (CustomAttribute.IsDefined((Type)this.superIR, typeof(Expando), true))
this.isExpando = superClassIsExpando = true;
}
this.hasAlreadyBeenAskedAboutExpando = true;
if (this.generateCodeForExpando)
this.CheckIfOKToGenerateCodeForExpando(superClassIsExpando);
if (this.isExpando){
this.classob.noExpando = false;
return true;
}
return false;
}