#develop (short for SharpDevelop) is a free IDE for .NET programming languages.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

46 lines
1007 B

// 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.Linq;
using ICSharpCode.SharpDevelop.Dom;
namespace ICSharpCode.PackageManagement.EnvDTE
{
public class CodeAttribute : CodeElement
{
IAttribute attribute;
public CodeAttribute(IAttribute attribute)
{
this.attribute = attribute;
}
public virtual string FullName {
get { return attribute.AttributeType.FullyQualifiedName; }
}
public virtual string Value {
get { return GetValue(); }
set { }
}
string GetValue()
{
return String.Join(", ", GetArgumentValues());
}
string[] GetArgumentValues()
{
return attribute
.PositionalArguments
.Select(arg => GetArgumentValue(arg))
.ToArray();
}
string GetArgumentValue(object argument)
{
return new CodeAttributeArgument(String.Empty, argument).Value;
}
}
}