#if (NET20 || NET35 || NET40) namespace System.Runtime.CompilerServices { /// /// Allows you to obtain the full path of the source file that contains the caller. This is the file path at the time of compile. /// /// [AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false, Inherited = false)] public class CallerFilePathAttribute : Attribute { } /// Allows you to obtain the line number in the source file at which the method is called. /// [AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false, Inherited = false)] public class CallerLineNumberAttribute : Attribute { } /// Allows you to obtain the method or property name of the caller to the method. /// [AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false, Inherited = false)] public class CallerMemberNameAttribute : Attribute { } } #endif