`struct`s in `Akka.Streams` with exclusively read-only members were made `readonly` (#6941)

* `struct`s with exclusively read-only members were made `readonly`

* added API approvals

---------

Co-authored-by: Lehonti Ramos <lehonti@ramos>
Co-authored-by: Gregorius Soedharmo <arkatufus@yahoo.com>
Co-authored-by: Aaron Stannard <aaron@petabridge.com>
This commit is contained in:
Lehonti Ramos 2024-01-04 20:57:38 +01:00 коммит произвёл GitHub
Родитель fd41a82e6f
Коммит 0486f97c68
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
13 изменённых файлов: 60 добавлений и 47 удалений

Просмотреть файл

@ -784,6 +784,7 @@ namespace Akka.Streams
public static Akka.Streams.IGraph<Akka.Streams.FlowShape<T, T>, Akka.Streams.UniqueKillSwitch> Single<T>() { }
public static Akka.Streams.IGraph<Akka.Streams.BidiShape<T1, T1, T2, T2>, Akka.Streams.UniqueKillSwitch> SingleBidi<T1, T2>() { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct MaterializationContext
{
public readonly Akka.Streams.Attributes EffectiveAttributes;
@ -2361,6 +2362,7 @@ namespace Akka.Streams.Dsl
{
public Tcp() { }
public override Akka.Streams.Dsl.TcpExt CreateExtension(Akka.Actor.ExtendedActorSystem system) { }
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct IncomingConnection
{
public readonly Akka.Streams.Dsl.Flow<Akka.IO.ByteString, Akka.IO.ByteString, Akka.NotUsed> Flow;
@ -2369,12 +2371,14 @@ namespace Akka.Streams.Dsl
public IncomingConnection(System.Net.EndPoint localAddress, System.Net.EndPoint remoteAddress, Akka.Streams.Dsl.Flow<Akka.IO.ByteString, Akka.IO.ByteString, Akka.NotUsed> flow) { }
public TMat HandleWith<TMat>(Akka.Streams.Dsl.Flow<Akka.IO.ByteString, Akka.IO.ByteString, TMat> handler, Akka.Streams.IMaterializer materializer) { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct OutgoingConnection
{
public readonly System.Net.EndPoint LocalAddress;
public readonly System.Net.EndPoint RemoteAddress;
public OutgoingConnection(System.Net.EndPoint remoteAddress, System.Net.EndPoint localAddress) { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct ServerBinding
{
public readonly System.Net.EndPoint LocalAddress;
@ -2753,6 +2757,7 @@ namespace Akka.Streams.IO
public AbruptIOTerminationException(Akka.Streams.IO.IOResult ioResult, System.Exception cause) { }
public Akka.Streams.IO.IOResult IoResult { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct IOResult
{
public readonly long Count;
@ -3034,23 +3039,27 @@ namespace Akka.Streams.Implementation
public const byte Depleted = 4;
public const byte Marked = 1;
public const byte Pending = 2;
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct OnComplete : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression
{
public readonly int Id;
public OnComplete(int id) { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct OnError : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression
{
public readonly System.Exception Cause;
public readonly int Id;
public OnError(int id, System.Exception cause) { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct OnNext : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression
{
public readonly object Element;
public readonly int Id;
public OnNext(int id, object element) { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct OnSubscribe : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression
{
public readonly int Id;
@ -3080,6 +3089,7 @@ namespace Akka.Streams.Implementation
public void PumpFinished() { }
protected override bool Receive(object message) { }
public void WaitForUpstream(int waitForUpstream) { }
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct SubInput<T> : Reactive.Streams.ISubscriber<T>
{
public SubInput(Akka.Actor.IActorRef impl, int id) { }
@ -3092,22 +3102,26 @@ namespace Akka.Streams.Implementation
[Akka.Annotations.InternalApiAttribute()]
public class static FanOut
{
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct ExposedPublishers<T> : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression
{
public readonly System.Collections.Immutable.ImmutableList<Akka.Streams.Implementation.ActorPublisher<T>> Publishers;
public ExposedPublishers(System.Collections.Immutable.ImmutableList<Akka.Streams.Implementation.ActorPublisher<T>> publishers) { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct SubstreamCancel : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression
{
public readonly int Id;
public SubstreamCancel(int id) { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct SubstreamRequestMore : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression
{
public readonly long Demand;
public readonly int Id;
public SubstreamRequestMore(int id, long demand) { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct SubstreamSubscribePending : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression
{
public readonly int Id;
@ -3820,6 +3834,7 @@ namespace Akka.Streams.Implementation
public const string GraphStageLogicTimer = "GraphStageLogicTimer";
public static System.TimeSpan IdleTimeoutCheckInterval(System.TimeSpan timeout) { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct TransferPhase
{
public readonly System.Action Action;
@ -3910,19 +3925,19 @@ namespace Akka.Streams.Implementation.Fusing
public static Akka.Actor.Props Props(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell) { }
protected override bool Receive(object message) { }
public Akka.Actor.IActorRef RegisterShell(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell) { }
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct Abort : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public Abort(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct AsyncInput : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public readonly object Event;
public readonly System.Action<object> Handler;
public readonly Akka.Streams.Stage.GraphStageLogic Logic;
public AsyncInput(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell, Akka.Streams.Stage.GraphStageLogic logic, object @event, System.Action<object> handler) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
public class BatchingActorInputBoundary : Akka.Streams.Implementation.Fusing.GraphInterpreter.UpstreamBoundaryStageLogic
@ -3958,77 +3973,76 @@ namespace Akka.Streams.Implementation.Fusing
public void Request(long elements) { }
public override string ToString() { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct Cancel : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public readonly int Id;
public Cancel(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell, int id, System.Exception cause) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public System.Exception Cause { get; }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct ExposedPublisher : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public readonly int Id;
public readonly Akka.Streams.Implementation.IActorPublisher Publisher;
public ExposedPublisher(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell, int id, Akka.Streams.Implementation.IActorPublisher publisher) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
public interface IBoundaryEvent : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression
{
Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct OnComplete : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public readonly int Id;
public OnComplete(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell, int id) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct OnError : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public readonly System.Exception Cause;
public readonly int Id;
public OnError(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell, int id, System.Exception cause) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct OnNext : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public readonly object Event;
public readonly int Id;
public OnNext(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell, int id, object @event) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct OnSubscribe : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public readonly int Id;
public readonly Reactive.Streams.ISubscription Subscription;
public OnSubscribe(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell, int id, Reactive.Streams.ISubscription subscription) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct RequestMore : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public readonly long Demand;
public readonly int Id;
public RequestMore(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell, int id, long demand) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct Resume : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public Resume(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct SubscribePending : Akka.Actor.INoSerializationVerificationNeeded, Akka.Event.IDeadLetterSuppression, Akka.Streams.Implementation.Fusing.ActorGraphInterpreter.IBoundaryEvent
{
public readonly int Id;
public SubscribePending(Akka.Streams.Implementation.Fusing.GraphInterpreterShell shell, int id) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Implementation.Fusing.GraphInterpreterShell Shell { get; }
}
}
@ -5074,12 +5088,11 @@ namespace Akka.Streams.Stage
public virtual void OnUpstreamFailure(System.Exception e) { }
public virtual void OnUpstreamFinish() { }
}
[System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public struct LogicAndMaterializedValue<TMaterialized> : Akka.Streams.Stage.ILogicAndMaterializedValue<TMaterialized>
{
public LogicAndMaterializedValue(Akka.Streams.Stage.GraphStageLogic logic, TMaterialized materializedValue) { }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public Akka.Streams.Stage.GraphStageLogic Logic { get; }
[get: System.Runtime.CompilerServices.IsReadOnlyAttribute()]
public TMaterialized MaterializedValue { get; }
}
public abstract class OutGraphStageLogic : Akka.Streams.Stage.GraphStageLogic, Akka.Streams.Stage.IOutHandler

Просмотреть файл

@ -33,7 +33,7 @@ namespace Akka.Streams.Dsl
/// <summary>
/// Represents a successful TCP server binding.
/// </summary>
public struct ServerBinding
public readonly struct ServerBinding
{
private readonly Func<Task> _unbindAction;
@ -63,7 +63,7 @@ namespace Akka.Streams.Dsl
/// <summary>
/// Represents an accepted incoming TCP connection.
/// </summary>
public struct IncomingConnection
public readonly struct IncomingConnection
{
/// <summary>
/// Initializes a new instance of the <see cref="IncomingConnection"/> class.
@ -110,7 +110,7 @@ namespace Akka.Streams.Dsl
/// <summary>
/// Represents a prospective outgoing TCP connection.
/// </summary>
public struct OutgoingConnection
public readonly struct OutgoingConnection
{
/// <summary>
/// Initializes a new instance of the <see cref="OutgoingConnection"/> class.

Просмотреть файл

@ -187,7 +187,7 @@ namespace Akka.Streams
/// <summary>
/// Context parameter to the create methods of sources and sinks.
/// </summary>
public struct MaterializationContext
public readonly struct MaterializationContext
{
/// <summary>
/// TBD

Просмотреть файл

@ -14,7 +14,7 @@ namespace Akka.Streams.IO
/// Holds a result of an IO operation.
/// </summary>
// ReSharper disable once InconsistentNaming
public struct IOResult
public readonly struct IOResult
{
private readonly Result<NotUsed> _status;

Просмотреть файл

@ -425,7 +425,7 @@ namespace Akka.Streams.Implementation
/// TBD
/// </summary>
[Serializable]
public struct OnError : INoSerializationVerificationNeeded, IDeadLetterSuppression
public readonly struct OnError : INoSerializationVerificationNeeded, IDeadLetterSuppression
{
/// <summary>
/// TBD
@ -452,7 +452,7 @@ namespace Akka.Streams.Implementation
/// TBD
/// </summary>
[Serializable]
public struct OnComplete : INoSerializationVerificationNeeded, IDeadLetterSuppression
public readonly struct OnComplete : INoSerializationVerificationNeeded, IDeadLetterSuppression
{
/// <summary>
/// TBD
@ -473,7 +473,7 @@ namespace Akka.Streams.Implementation
/// TBD
/// </summary>
[Serializable]
public struct OnNext : INoSerializationVerificationNeeded, IDeadLetterSuppression
public readonly struct OnNext : INoSerializationVerificationNeeded, IDeadLetterSuppression
{
/// <summary>
/// TBD
@ -500,7 +500,7 @@ namespace Akka.Streams.Implementation
/// TBD
/// </summary>
[Serializable]
public struct OnSubscribe : INoSerializationVerificationNeeded, IDeadLetterSuppression
public readonly struct OnSubscribe : INoSerializationVerificationNeeded, IDeadLetterSuppression
{
/// <summary>
/// TBD
@ -557,7 +557,7 @@ namespace Akka.Streams.Implementation
/// <summary>
/// TBD
/// </summary>
public struct SubInput : ISubscriber<T>
public readonly struct SubInput : ISubscriber<T>
{
private readonly IActorRef _impl;
private readonly int _id;

Просмотреть файл

@ -415,7 +415,7 @@ namespace Akka.Streams.Implementation
/// TBD
/// </summary>
[Serializable]
public struct SubstreamRequestMore : INoSerializationVerificationNeeded, IDeadLetterSuppression
public readonly struct SubstreamRequestMore : INoSerializationVerificationNeeded, IDeadLetterSuppression
{
/// <summary>
/// TBD
@ -442,7 +442,7 @@ namespace Akka.Streams.Implementation
/// TBD
/// </summary>
[Serializable]
public struct SubstreamCancel : INoSerializationVerificationNeeded, IDeadLetterSuppression
public readonly struct SubstreamCancel : INoSerializationVerificationNeeded, IDeadLetterSuppression
{
/// <summary>
/// TBD
@ -463,7 +463,7 @@ namespace Akka.Streams.Implementation
/// TBD
/// </summary>
[Serializable]
public struct SubstreamSubscribePending : INoSerializationVerificationNeeded, IDeadLetterSuppression
public readonly struct SubstreamSubscribePending : INoSerializationVerificationNeeded, IDeadLetterSuppression
{
/// <summary>
/// TBD
@ -519,7 +519,7 @@ namespace Akka.Streams.Implementation
/// </summary>
/// <typeparam name="T">TBD</typeparam>
[Serializable]
public struct ExposedPublishers<T> : INoSerializationVerificationNeeded, IDeadLetterSuppression
public readonly struct ExposedPublishers<T> : INoSerializationVerificationNeeded, IDeadLetterSuppression
{
/// <summary>
/// TBD

Просмотреть файл

@ -454,7 +454,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct OnError : IBoundaryEvent
public readonly struct OnError : IBoundaryEvent
{
/// <summary>
/// TBD
@ -486,7 +486,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct OnComplete : IBoundaryEvent
public readonly struct OnComplete : IBoundaryEvent
{
/// <summary>
/// TBD
@ -512,7 +512,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct OnNext : IBoundaryEvent
public readonly struct OnNext : IBoundaryEvent
{
/// <summary>
/// TBD
@ -544,7 +544,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct OnSubscribe : IBoundaryEvent
public readonly struct OnSubscribe : IBoundaryEvent
{
/// <summary>
/// TBD
@ -576,7 +576,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct RequestMore : IBoundaryEvent
public readonly struct RequestMore : IBoundaryEvent
{
/// <summary>
/// TBD
@ -608,7 +608,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct Cancel : IBoundaryEvent
public readonly struct Cancel : IBoundaryEvent
{
/// <summary>
/// TBD
@ -639,7 +639,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct SubscribePending : IBoundaryEvent
public readonly struct SubscribePending : IBoundaryEvent
{
/// <summary>
/// TBD
@ -665,7 +665,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct ExposedPublisher : IBoundaryEvent
public readonly struct ExposedPublisher : IBoundaryEvent
{
/// <summary>
/// TBD
@ -697,7 +697,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct AsyncInput : IBoundaryEvent
public readonly struct AsyncInput : IBoundaryEvent
{
/// <summary>
/// TBD
@ -736,7 +736,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct Resume : IBoundaryEvent
public readonly struct Resume : IBoundaryEvent
{
/// <summary>
/// TBD
@ -753,7 +753,7 @@ namespace Akka.Streams.Implementation.Fusing
/// <summary>
/// TBD
/// </summary>
public struct Abort : IBoundaryEvent
public readonly struct Abort : IBoundaryEvent
{
/// <summary>
/// TBD

Просмотреть файл

@ -61,7 +61,7 @@ namespace Akka.Streams.Implementation.IO
.WithDeploy(Deploy.Local);
}
private struct Continue : IDeadLetterSuppression
private readonly struct Continue : IDeadLetterSuppression
{
public static readonly Continue Instance = new();
}

Просмотреть файл

@ -39,7 +39,7 @@ namespace Akka.Streams.Implementation.IO
return Actor.Props.Create<InputStreamPublisher>(inputstream, completionSource, chunkSize).WithDeploy(Deploy.Local);
}
private struct Continue : IDeadLetterSuppression
private readonly struct Continue : IDeadLetterSuppression
{
public static Continue Instance { get; } = new();
}

Просмотреть файл

@ -72,7 +72,7 @@ namespace Akka.Streams.Implementation.IO
/// <summary>
/// TBD
/// </summary>
internal struct Data : IStreamToAdapterMessage
internal readonly struct Data : IStreamToAdapterMessage
{
/// <summary>
/// TBD
@ -124,7 +124,7 @@ namespace Akka.Streams.Implementation.IO
/// <summary>
/// TBD
/// </summary>
internal struct Failed : IStreamToAdapterMessage
internal readonly struct Failed : IStreamToAdapterMessage
{
/// <summary>
/// TBD

Просмотреть файл

@ -335,7 +335,7 @@ namespace Akka.Streams.Implementation.IO
/// <summary>
/// TBD
/// </summary>
internal struct Outbound : ITcpRole
internal readonly struct Outbound : ITcpRole
{
/// <summary>
/// TBD
@ -376,7 +376,7 @@ namespace Akka.Streams.Implementation.IO
/// <summary>
/// TBD
/// </summary>
internal struct Inbound : ITcpRole
internal readonly struct Inbound : ITcpRole
{
/// <summary>
/// TBD

Просмотреть файл

@ -362,7 +362,7 @@ namespace Akka.Streams.Implementation
/// <summary>
/// TBD
/// </summary>
public struct TransferPhase
public readonly struct TransferPhase
{
/// <summary>
/// TBD

Просмотреть файл

@ -46,7 +46,7 @@ namespace Akka.Streams.Stage
/// TBD
/// </summary>
/// <typeparam name="TMaterialized">TBD</typeparam>
public struct LogicAndMaterializedValue<TMaterialized> : ILogicAndMaterializedValue<TMaterialized>
public readonly struct LogicAndMaterializedValue<TMaterialized> : ILogicAndMaterializedValue<TMaterialized>
{
/// <summary>
/// TBD