Browse Source

[Completion] Renamed IMemberProvider -> ICompletionContextProvider.

newNRvisualizers
Mike Krüger 14 years ago
parent
commit
81c7daa563
  1. 10
      ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs
  2. 18
      ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngineBase.cs
  3. 2
      ICSharpCode.NRefactory.CSharp/Completion/CSharpParameterCompletionEngine.cs
  4. 6
      ICSharpCode.NRefactory.CSharp/Completion/ICompletionContextProvider.cs
  5. 5
      ICSharpCode.NRefactory.CSharp/ICSharpCode.NRefactory.CSharp.csproj
  6. 4
      ICSharpCode.NRefactory.Tests/CSharp/CodeCompletion/CodeCompletionBugTests.cs
  7. 2
      ICSharpCode.NRefactory.Tests/CSharp/CodeCompletion/ParameterCompletionTests.cs

10
ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs

@ -57,7 +57,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -57,7 +57,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
public bool CloseOnSquareBrackets;
#endregion
public CSharpCompletionEngine(IDocument document, IMemberProvider memberProvider, ICompletionDataFactory factory, IProjectContent content, CSharpTypeResolveContext ctx) : base (content, memberProvider, ctx)
public CSharpCompletionEngine(IDocument document, ICompletionContextProvider completionContextProvider, ICompletionDataFactory factory, IProjectContent content, CSharpTypeResolveContext ctx) : base (content, completionContextProvider, ctx)
{
if (document == null) {
throw new ArgumentNullException("document");
@ -882,7 +882,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -882,7 +882,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
if (n.Parent is ICSharpCode.NRefactory.CSharp.Attribute) {
nodes.Add(n.Parent);
}
var astResolver = MemberProvider.GetResolver (csResolver, identifierStart.Unit);
var astResolver = CompletionContextProvider.GetResolver (csResolver, identifierStart.Unit);
astResolver.ApplyNavigator(new NodeListResolveVisitorNavigator(nodes));
try {
csResolver = astResolver.GetResolverStateBefore(n);
@ -1278,7 +1278,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -1278,7 +1278,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
var root = node;
while (root.Parent != null)
root = root.Parent;
var astResolver = MemberProvider.GetResolver (state, root);
var astResolver = CompletionContextProvider.GetResolver (state, root);
foreach (var type in CreateFieldAction.GetValidTypes(astResolver, (Expression)node)) {
if (type.Kind == TypeKind.Enum) {
AddEnumMembers(wrapper, type, state);
@ -1653,7 +1653,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -1653,7 +1653,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
var expressionOrVariableDeclaration = GetNewExpressionAt(j);
if (expressionOrVariableDeclaration == null)
return null;
var astResolver = MemberProvider.GetResolver(GetState(), expressionOrVariableDeclaration.Unit);
var astResolver = CompletionContextProvider.GetResolver(GetState(), expressionOrVariableDeclaration.Unit);
hintType = CreateFieldAction.GetValidTypes(
astResolver,
expressionOrVariableDeclaration.Node as Expression
@ -2135,7 +2135,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -2135,7 +2135,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
var exprParent = resolvedNode.GetParent<Expression>();
var unit = exprParent != null ? exprParent.GetParent<CompilationUnit>() : null;
var astResolver = unit != null ? MemberProvider.GetResolver(state, unit) : null;
var astResolver = unit != null ? CompletionContextProvider.GetResolver(state, unit) : null;
IType hintType = exprParent != null && astResolver != null ?
CreateFieldAction.GetValidTypes(astResolver, exprParent) .FirstOrDefault() :
null;

18
ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngineBase.cs

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
//
//
// CSharpCompletionEngineBase.cs
//
// Author:
@ -64,22 +64,22 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -64,22 +64,22 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
}
#endregion
protected CSharpCompletionEngineBase(IProjectContent content, IMemberProvider memberProvider, CSharpTypeResolveContext ctx)
protected CSharpCompletionEngineBase(IProjectContent content, ICompletionContextProvider completionContextProvider, CSharpTypeResolveContext ctx)
{
if (content == null)
throw new ArgumentNullException("content");
if (ctx == null)
throw new ArgumentNullException("ctx");
if (memberProvider == null)
throw new ArgumentNullException("memberProvider");
if (completionContextProvider == null)
throw new ArgumentNullException("completionContextProvider");
this.ProjectContent = content;
this.MemberProvider = memberProvider;
this.CompletionContextProvider = completionContextProvider;
this.ctx = ctx;
}
public IMemberProvider MemberProvider {
public ICompletionContextProvider CompletionContextProvider {
get;
private set;
}
@ -90,7 +90,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -90,7 +90,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
this.offset = offset;
this.location = document.GetLocation (offset);
MemberProvider.GetCurrentMembers (offset, out currentType, out currentMember);
CompletionContextProvider.GetCurrentMembers (offset, out currentType, out currentMember);
}
public bool GetParameterCompletionCommandOffset (out int cpos)
@ -703,7 +703,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -703,7 +703,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
protected Tuple<string, TextLocation> GetMemberTextToCaret()
{
return MemberProvider.GetMemberTextToCaret(offset, currentType, currentMember);
return CompletionContextProvider.GetMemberTextToCaret(offset, currentType, currentMember);
}
protected ExpressionResult GetInvocationBeforeCursor(bool afterBracket)
@ -801,7 +801,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -801,7 +801,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
if (root == null) {
return null;
}
var csResolver = MemberProvider.GetResolver (GetState(), root);
var csResolver = CompletionContextProvider.GetResolver (GetState(), root);
var result = csResolver.Resolve(resolveNode);
var state = csResolver.GetResolverStateBefore(resolveNode);
return Tuple.Create(result, state);

2
ICSharpCode.NRefactory.CSharp/Completion/CSharpParameterCompletionEngine.cs

@ -39,7 +39,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -39,7 +39,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
{
internal IParameterCompletionDataFactory factory;
public CSharpParameterCompletionEngine(IDocument document, IMemberProvider memberProvider, IParameterCompletionDataFactory factory, IProjectContent content, CSharpTypeResolveContext ctx) : base (content, memberProvider, ctx)
public CSharpParameterCompletionEngine(IDocument document, ICompletionContextProvider completionContextProvider, IParameterCompletionDataFactory factory, IProjectContent content, CSharpTypeResolveContext ctx) : base (content, completionContextProvider, ctx)
{
if (document == null) {
throw new ArgumentNullException("document");

6
ICSharpCode.NRefactory.CSharp/Completion/IMemberProvider.cs → ICSharpCode.NRefactory.CSharp/Completion/ICompletionContextProvider.cs

@ -33,7 +33,7 @@ using ICSharpCode.NRefactory.CSharp.Resolver; @@ -33,7 +33,7 @@ using ICSharpCode.NRefactory.CSharp.Resolver;
namespace ICSharpCode.NRefactory.CSharp.Completion
{
public interface IMemberProvider
public interface ICompletionContextProvider
{
void GetCurrentMembers (int offset, out IUnresolvedTypeDefinition currentType, out IUnresolvedMember currentMember);
@ -42,12 +42,12 @@ namespace ICSharpCode.NRefactory.CSharp.Completion @@ -42,12 +42,12 @@ namespace ICSharpCode.NRefactory.CSharp.Completion
CSharpAstResolver GetResolver (CSharpResolver resolver, AstNode rootNode);
}
public class DefaultMemberProvider : IMemberProvider
public class DefaultCompletionContextProvider : ICompletionContextProvider
{
readonly IDocument document;
readonly CSharpParsedFile parsedFile;
public DefaultMemberProvider (IDocument document, CSharpParsedFile parsedFile)
public DefaultCompletionContextProvider (IDocument document, CSharpParsedFile parsedFile)
{
if (document == null)
throw new ArgumentNullException("document");

5
ICSharpCode.NRefactory.CSharp/ICSharpCode.NRefactory.CSharp.csproj

@ -41,8 +41,7 @@ @@ -41,8 +41,7 @@
<DefineConstants>TRACE;FULL_AST</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>PdbOnly</DebugType>
<DebugSymbols>false</DebugSymbols>
<DebugType>none</DebugType>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugType>full</DebugType>
@ -294,7 +293,6 @@ @@ -294,7 +293,6 @@
<Compile Include="Completion\CSharpCompletionEngine.cs" />
<Compile Include="Completion\CSharpCompletionEngineBase.cs" />
<Compile Include="Completion\CSharpParameterCompletionEngine.cs" />
<Compile Include="Completion\IMemberProvider.cs" />
<Compile Include="Parser\mcs\module.cs" />
<Compile Include="Parser\mcs\settings.cs" />
<Compile Include="Parser\mcs\SourceMethodBuilder.cs" />
@ -374,6 +372,7 @@ @@ -374,6 +372,7 @@
<Compile Include="Refactoring\CodeActions\ImplementInterfaceExplicitAction.cs" />
<Compile Include="Refactoring\CodeActions\ImplementAbstractMembersAction.cs" />
<Compile Include="Refactoring\CodeActions\ExtractFieldAction.cs" />
<Compile Include="Completion\ICompletionContextProvider.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj">

4
ICSharpCode.NRefactory.Tests/CSharp/CodeCompletion/CodeCompletionBugTests.cs

@ -239,7 +239,7 @@ namespace ICSharpCode.NRefactory.CSharp.CodeCompletion @@ -239,7 +239,7 @@ namespace ICSharpCode.NRefactory.CSharp.CodeCompletion
rctx = rctx.WithCurrentMember(curMember);
}
}
var mb = new DefaultMemberProvider(doc, parsedFile);
var mb = new DefaultCompletionContextProvider(doc, parsedFile);
var engine = new CSharpCompletionEngine (doc, mb, new TestFactory (), pctx, rctx);
engine.EolMarker = Environment.NewLine;
@ -265,7 +265,7 @@ namespace ICSharpCode.NRefactory.CSharp.CodeCompletion @@ -265,7 +265,7 @@ namespace ICSharpCode.NRefactory.CSharp.CodeCompletion
pctx = pctx.UpdateProjectContent(null, parsedFile);
var cmp = pctx.CreateCompilation();
var mb = new DefaultMemberProvider(doc, parsedFile);
var mb = new DefaultCompletionContextProvider(doc, parsedFile);
var engine = new CSharpCompletionEngine (doc, mb, new TestFactory (), pctx, new CSharpTypeResolveContext (cmp.MainAssembly));
engine.EolMarker = Environment.NewLine;
engine.FormattingPolicy = FormattingOptionsFactory.CreateMono ();

2
ICSharpCode.NRefactory.Tests/CSharp/CodeCompletion/ParameterCompletionTests.cs

@ -291,7 +291,7 @@ namespace ICSharpCode.NRefactory.CSharp.CodeCompletion @@ -291,7 +291,7 @@ namespace ICSharpCode.NRefactory.CSharp.CodeCompletion
rctx = rctx.WithCurrentMember(curMember.CreateResolved(rctx));
}
}
var mb = new DefaultMemberProvider(doc, parsedFile);
var mb = new DefaultCompletionContextProvider(doc, parsedFile);
var engine = new CSharpParameterCompletionEngine (doc, mb, new TestFactory (pctx), pctx, rctx);
return engine.GetParameterDataProvider (cursorPosition, doc.GetCharAt (cursorPosition - 1));
}

Loading…
Cancel
Save