提交 bb4b8cac 编写于 作者: V Vladimir Sadov 提交者: GitHub

Merge pull request #19621 from VSadov/IsRefStruct2

CR feedback on ref structs
......@@ -185,6 +185,11 @@ public override bool IsAbstract
get { return false; }
}
internal sealed override bool IsByRefLikeType
{
get { return false; }
}
public override bool IsSealed
{
get { return true; }
......
......@@ -300,6 +300,11 @@ public override bool IsAbstract
get { return false; }
}
internal sealed override bool IsByRefLikeType
{
get { return false; }
}
public override bool IsSealed
{
get { return true; }
......
......@@ -241,6 +241,14 @@ internal sealed override bool IsManagedType
}
}
internal sealed override bool IsByRefLikeType
{
get
{
return false;
}
}
internal sealed override ObsoleteAttributeData ObsoleteAttributeData
{
get { return null; }
......
......@@ -115,6 +115,14 @@ internal sealed override bool IsManagedType
}
}
internal sealed override bool IsByRefLikeType
{
get
{
return false;
}
}
internal sealed override ObsoleteAttributeData ObsoleteAttributeData
{
get { return null; }
......
......@@ -103,6 +103,14 @@ public override bool IsValueType
get { return false; }
}
internal sealed override bool IsByRefLikeType
{
get
{
return false;
}
}
/// <summary>
/// Collection of names of members declared within this type.
/// </summary>
......
......@@ -128,6 +128,14 @@ internal sealed override bool IsManagedType
}
}
internal sealed override bool IsByRefLikeType
{
get
{
return false;
}
}
internal sealed override ObsoleteAttributeData ObsoleteAttributeData
{
get { return null; }
......
......@@ -162,6 +162,8 @@ internal override IEnumerable<FieldSymbol> GetFieldsToEmit()
public override bool IsStatic => false;
internal sealed override bool IsByRefLikeType => false;
internal override ImmutableArray<NamedTypeSymbol> InterfacesNoUseSiteDiagnostics(ConsList<Symbol> basesBeingResolved) => ImmutableArray<NamedTypeSymbol>.Empty;
internal override ImmutableArray<NamedTypeSymbol> GetInterfacesToEmit() => CalculateInterfacesToEmit();
......
......@@ -477,6 +477,14 @@ internal sealed override bool IsManagedType
}
}
internal sealed override bool IsByRefLikeType
{
get
{
return false;
}
}
internal sealed override ObsoleteAttributeData ObsoleteAttributeData
{
get { return null; }
......
......@@ -642,7 +642,7 @@ public virtual NamedTypeSymbol TupleUnderlyingType
/// <summary>
/// Returns true if the type may contain embedded references
/// </summary>
internal virtual bool IsByRefLikeType => false;
internal abstract bool IsByRefLikeType { get; }
#region ITypeSymbol Members
......
......@@ -194,6 +194,14 @@ public override bool IsStatic
}
}
internal sealed override bool IsByRefLikeType
{
get
{
return false;
}
}
public override bool IsAbstract
{
get
......
......@@ -3289,7 +3289,6 @@ internal static bool IsSynthesizedAttributeOptional(WellKnownMember attributeMem
case WellKnownMember.System_STAThreadAttribute__ctor:
case WellKnownMember.System_Runtime_CompilerServices_AsyncStateMachineAttribute__ctor:
case WellKnownMember.System_Runtime_CompilerServices_IteratorStateMachineAttribute__ctor:
case WellKnownMember.System_Runtime_CompilerServices_IsByRefLikeAttribute__ctor:
return true;
default:
......
......@@ -318,6 +318,11 @@ public override bool IsAbstract
get { return false; }
}
internal sealed override bool IsByRefLikeType
{
get { return false; }
}
public override bool IsSealed
{
get { return true; }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册