//////////////////////////////////////////////////////////////////////////////// // // Microsoft Research Singularity // // Copyright (c) Microsoft Corporation. All rights reserved. // // File: ClaimsAttribute.cs // // Note: File is part of Sing# runtime files and copied into Singularity tree // whenever a new version of Sing# is dropped. // using System; namespace Microsoft.SingSharp { /// /// Can be used on parameters of ITracked type to override the default Borrowed semantics. /// /// Means that parameter ownership is not returned by method. /// /// If the attribute appears on an instance method, the attribute applies to the receiver parameter. /// [ AttributeUsage(AttributeTargets.Parameter | AttributeTargets.Method, AllowMultiple = false)] public class ClaimsAttribute : Attribute { } /// /// Can be used on return of ITracked type to override the default Owned semantics. /// /// Means that the returned value is part of the 'receivers' representation and cannot outlive the receiver. /// /// [ AttributeUsage(AttributeTargets.ReturnValue, AllowMultiple = false)] public class BorrowedAttribute : Attribute { } }