ICSharpCode.NRefactory.MonoCSharp.TypeDefinition.RegisterFieldForInitialization C# (CSharp) Method

RegisterFieldForInitialization() public method

public RegisterFieldForInitialization ( MemberCore field, ICSharpCode.NRefactory.MonoCSharp.FieldInitializer expression ) : void
field MemberCore
expression ICSharpCode.NRefactory.MonoCSharp.FieldInitializer
return void
		public void RegisterFieldForInitialization (MemberCore field, FieldInitializer expression)
		{
			if (IsPartialPart)
				PartialContainer.RegisterFieldForInitialization (field, expression);

			if ((field.ModFlags & Modifiers.STATIC) != 0){
				if (initialized_static_fields == null) {
					HasStaticFieldInitializer = true;
					initialized_static_fields = new List<FieldInitializer> (4);
				}

				initialized_static_fields.Add (expression);
			} else {
				if (Kind == MemberKind.Struct) {
					if (Compiler.Settings.Version != LanguageVersion.Experimental) {
						Report.Error (573, expression.Location, "'{0}': Structs cannot have instance property or field initializers",
							GetSignatureForError ());
					}
				}

				if (initialized_fields == null)
					initialized_fields = new List<FieldInitializer> (4);

				initialized_fields.Add (expression);
			}
		}