1 // -----------------------------------------------------------------------
\r
2 // Copyright (c) Microsoft Corporation. All rights reserved.
\r
3 // -----------------------------------------------------------------------
\r
5 using System.Globalization;
\r
6 using System.Reflection;
\r
7 using Microsoft.Internal;
\r
8 using System.Threading;
\r
10 namespace System.ComponentModel.Composition.ReflectionModel
\r
12 internal class ReflectionParameter : ReflectionItem
\r
14 private readonly ParameterInfo _parameter;
\r
16 public ReflectionParameter(ParameterInfo parameter)
\r
18 Assumes.NotNull(parameter);
\r
20 this._parameter = parameter;
\r
23 public ParameterInfo UnderlyingParameter
\r
25 get { return this._parameter; }
\r
28 public override string Name
\r
30 get { return this.UnderlyingParameter.Name; }
\r
33 public override string GetDisplayName()
\r
35 return string.Format(
\r
36 CultureInfo.CurrentCulture,
\r
37 "{0} (Parameter=\"{1}\")", // NOLOC
\r
38 this.UnderlyingParameter.Member.GetDisplayName(),
\r
39 this.UnderlyingParameter.Name);
\r
42 public override Type ReturnType
\r
44 get { return this.UnderlyingParameter.ParameterType; }
\r
47 public override ReflectionItemType ItemType
\r
49 get { return ReflectionItemType.Parameter; }
\r