Skip to content

[Proposal]: Caller info attribute for passing caller identity implicitly #9018

Open
@jaredpar

Description

@jaredpar

Caller info attribute for passing caller identity implicitly

Summary

namespace System.Runtime.CompilerServices
{
    [AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false, Inherited = false)]
    public sealed class CallerIdentityAttribute : Attribute
    {
        public CallerIdentityAttribute();
    }
}

This attribute can be applied to parameters of type System.Reflection.Assembly, System.Reflection.Type, System.Reflection.MethodBase. When the C# compiler sees parameter tagged with this attribute, it will provide default value for it, according to the caller context:

  • System.Reflection.Assembly: typeof(containing_type).Assembly
  • System.Reflection.Type: typeof(containing_type)
  • System.Reflection.MethodBase: MethodBase.GetMethodFromHandle(ldtoken containing_method)

Design meetings

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions