5 changed files with 138 additions and 1 deletions
@ -0,0 +1,22 @@ |
|||||||
|
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
|
||||||
|
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
|
||||||
|
|
||||||
|
using System; |
||||||
|
using ICSharpCode.SharpDevelop.Dom; |
||||||
|
|
||||||
|
namespace ICSharpCode.PackageManagement.EnvDTE |
||||||
|
{ |
||||||
|
public class CodeParameter : CodeElement |
||||||
|
{ |
||||||
|
IParameter parameter; |
||||||
|
|
||||||
|
public CodeParameter(IParameter parameter) |
||||||
|
{ |
||||||
|
this.parameter = parameter; |
||||||
|
} |
||||||
|
|
||||||
|
public override string Name { |
||||||
|
get { return parameter.Name; } |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,31 @@ |
|||||||
|
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
|
||||||
|
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
|
||||||
|
|
||||||
|
using System; |
||||||
|
using ICSharpCode.SharpDevelop.Dom; |
||||||
|
|
||||||
|
namespace ICSharpCode.PackageManagement.EnvDTE |
||||||
|
{ |
||||||
|
public class CodePropertyParameters : CodeElementsList |
||||||
|
{ |
||||||
|
IProperty property; |
||||||
|
|
||||||
|
public CodePropertyParameters(IProperty property) |
||||||
|
{ |
||||||
|
this.property = property; |
||||||
|
AddParameters(); |
||||||
|
} |
||||||
|
|
||||||
|
void AddParameters() |
||||||
|
{ |
||||||
|
foreach (IParameter parameter in property.Parameters) { |
||||||
|
AddParameters(parameter); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
void AddParameters(IParameter parameter) |
||||||
|
{ |
||||||
|
AddCodeElement(new CodeParameter(parameter)); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,82 @@ |
|||||||
|
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
|
||||||
|
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
|
||||||
|
|
||||||
|
using System; |
||||||
|
using System.Collections.Generic; |
||||||
|
using System.Linq; |
||||||
|
using ICSharpCode.PackageManagement.EnvDTE; |
||||||
|
|
||||||
|
namespace PackageManagement.Tests.Helpers |
||||||
|
{ |
||||||
|
public static class CodeElementsExtensions |
||||||
|
{ |
||||||
|
public static List<CodeElement> ToList(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
var list = new List<CodeElement>(); |
||||||
|
foreach (CodeElement codeElement in codeElements) { |
||||||
|
list.Add(codeElement); |
||||||
|
} |
||||||
|
return list; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeElement FirstOrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return ToList(codeElements).FirstOrDefault(); |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeFunction FirstCodeFunctionOrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.FirstOrDefault() as CodeFunction; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeClass2 FirstCodeClass2OrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.FirstOrDefault() as CodeClass2; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeInterface FirstCodeInterfaceOrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.FirstOrDefault() as CodeInterface; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeAttributeArgument FirstCodeAttributeArgumentOrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.FirstOrDefault() as CodeAttributeArgument; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeNamespace FirstCodeNamespaceOrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.FirstOrDefault() as CodeNamespace; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeNamespace LastCodeNamespaceOrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.LastOrDefault() as CodeNamespace; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeElement LastOrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.ToList().LastOrDefault(); |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeAttribute2 FirstCodeAttribute2OrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.FirstOrDefault() as CodeAttribute2; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeProperty2 FirstCodeProperty2OrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.FirstOrDefault() as CodeProperty2; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeVariable FirstCodeVariableOrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.FirstOrDefault() as CodeVariable; |
||||||
|
} |
||||||
|
|
||||||
|
public static CodeParameter FirstCodeParameterOrDefault(this CodeElements codeElements) |
||||||
|
{ |
||||||
|
return codeElements.FirstOrDefault() as CodeParameter; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
Loading…
Reference in new issue