55using System . Collections . Generic ;
66using System . Linq ;
77using ICSharpCode . Core ;
8- using ICSharpCode . NRefactory ;
98using ICSharpCode . NRefactory . TypeSystem ;
109using ICSharpCode . SharpDevelop . Parser ;
1110
@@ -64,7 +63,7 @@ public interface IAssemblyModel
6463 /// <summary>
6564 /// Returns the assembly references.
6665 /// </summary>
67- IReadOnlyList < DomAssemblyName > References { get ; }
66+ IAssemblyReferencesModel References { get ; }
6867 }
6968
7069 /// <summary>
@@ -86,6 +85,12 @@ public interface IUpdateableAssemblyModel : IAssemblyModel
8685 /// </summary>
8786 void Update ( IList < IUnresolvedTypeDefinition > oldFile , IList < IUnresolvedTypeDefinition > newFile ) ;
8887
88+ /// <summary>
89+ /// Updates references of this assembly.
90+ /// </summary>
91+ /// <param name="references">Names of referenced assemblies</param>
92+ void UpdateReferences ( IReadOnlyList < DomAssemblyName > references ) ;
93+
8994 /// <summary>
9095 /// Gets the assembly name (short name).
9196 /// </summary>
@@ -95,17 +100,12 @@ public interface IUpdateableAssemblyModel : IAssemblyModel
95100 /// Gets the full assembly name (including public key token etc.)
96101 /// </summary>
97102 new string FullAssemblyName { get ; set ; }
98-
99- /// <summary>
100- /// Returns the assembly references.
101- /// </summary>
102- new IReadOnlyList < DomAssemblyName > References { get ; set ; }
103103 }
104104
105105 public sealed class EmptyAssemblyModel : IAssemblyModel
106106 {
107107 public readonly static IAssemblyModel Instance = new EmptyAssemblyModel ( ) ;
108-
108+
109109 EmptyAssemblyModel ( )
110110 {
111111 }
@@ -117,7 +117,7 @@ public string AssemblyName {
117117 public string FullAssemblyName {
118118 get { return string . Empty ; }
119119 }
120-
120+
121121 public ITypeDefinitionModelCollection TopLevelTypeDefinitions {
122122 get { return EmptyTypeDefinitionModelCollection . Instance ; }
123123 }
@@ -129,7 +129,7 @@ public IModelCollection<INamespaceModel> Namespaces {
129129 public INamespaceModel RootNamespace {
130130 get { return EmptyNamespaceModel . Instance ; }
131131 }
132-
132+
133133 public IEntityModelContext Context {
134134 get {
135135 return null ;
@@ -142,8 +142,8 @@ public FileName Location {
142142 }
143143 }
144144
145- public IReadOnlyList < DomAssemblyName > References {
146- get { return EmptyList < DomAssemblyName > . Instance ; }
145+ public IAssemblyReferencesModel References {
146+ get { return EmptyAssemblyReferencesModel . Instance ; }
147147 }
148148 }
149149}
0 commit comments