From cc49af8e05966a51afa412aff81a8017f8f02450 Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Fri, 17 Sep 2010 17:13:29 +0200 Subject: [PATCH] Add public constructor to ParseProjectContent and move mscorlib initialization to CompilableProject. --- .../Project/Src/Project/CompilableProject.cs | 5 ++++- .../ParserService/ParseProjectContent.cs | 16 +++++++--------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/Main/Base/Project/Src/Project/CompilableProject.cs b/src/Main/Base/Project/Src/Project/CompilableProject.cs index 0b5369267c..f9f2674220 100644 --- a/src/Main/Base/Project/Src/Project/CompilableProject.cs +++ b/src/Main/Base/Project/Src/Project/CompilableProject.cs @@ -195,7 +195,10 @@ namespace ICSharpCode.SharpDevelop.Project protected override ParseProjectContent CreateProjectContent() { - return ParseProjectContent.CreateUninitalized(this); + ParseProjectContent newProjectContent = new ParseProjectContent(this); + var mscorlib = AssemblyParserService.GetRegistryForReference(new ReferenceProjectItem(this, "mscorlib")).Mscorlib; + newProjectContent.AddReferencedContent(mscorlib); + return newProjectContent; } #region Starting (debugging) diff --git a/src/Main/Base/Project/Src/Services/ParserService/ParseProjectContent.cs b/src/Main/Base/Project/Src/Services/ParserService/ParseProjectContent.cs index 68658dc23c..1364563ca2 100644 --- a/src/Main/Base/Project/Src/Services/ParserService/ParseProjectContent.cs +++ b/src/Main/Base/Project/Src/Services/ParserService/ParseProjectContent.cs @@ -17,18 +17,16 @@ namespace ICSharpCode.SharpDevelop { public sealed class ParseProjectContent : DefaultProjectContent { - internal static ParseProjectContent CreateUninitalized(IProject project) + public ParseProjectContent(IProject project) { - ParseProjectContent newProjectContent = new ParseProjectContent(); - newProjectContent.project = project; - newProjectContent.Language = project.LanguageProperties; - newProjectContent.initializing = true; - IProjectContent mscorlib = AssemblyParserService.GetRegistryForReference(new ReferenceProjectItem(project, "mscorlib")).Mscorlib; - newProjectContent.AddReferencedContent(mscorlib); - return newProjectContent; + if (project == null) + throw new ArgumentNullException("project"); + this.project = project; + this.Language = project.LanguageProperties; + this.initializing = true; } - IProject project; + readonly IProject project; public override object Project { get {