public static GetHiddenField ( IFieldDefinition derivedClassField ) : IFieldDefinition | ||
derivedClassField | IFieldDefinition | |
Résultat | IFieldDefinition |
public static IFieldDefinition GetHiddenField(IFieldDefinition derivedClassField) {
var typeDef = derivedClassField.ContainingTypeDefinition;
foreach (ITypeReference baseClassReference in typeDef.BaseClasses) {
IFieldDefinition hiddenField = GetHiddenField(derivedClassField, baseClassReference.ResolvedType);
if (!(hiddenField is Dummy)) return hiddenField;
}
return Dummy.FieldDefinition;
}
private static IFieldDefinition GetHiddenField(IFieldDefinition derivedClassField, ITypeDefinition baseClass) {
Utils::GetHiddenField ( IFieldDefinition derivedClassField, ITypeDefinition baseClass ) : IFieldDefinition |
public virtual void PrintFieldDefinitionModifiers(IFieldDefinition fieldDefinition) { if (!(Utils.GetHiddenField(fieldDefinition) is Dummy)) { PrintKeywordNew(); } if (fieldDefinition.Type.TypeCode == PrimitiveTypeCode.Pointer) { PrintKeywordUnsafe(); } if (fieldDefinition.IsCompileTimeConstant) { sourceEmitterOutput.Write("const "); return; } if (fieldDefinition.IsStatic) { PrintKeywordStatic(); } if (fieldDefinition.IsReadOnly) { PrintKeywordReadOnly(); } if (MemberHelper.IsVolatile(fieldDefinition)) { sourceEmitterOutput.Write("volatile "); } }