mirror of
https://github.com/chylex/Brotli-Builder.git
synced 2025-03-15 02:15:46 +01:00
Make DistanceParameters a readonly struct
This commit is contained in:
parent
82f212a4b8
commit
6baa782fb9
BrotliLib/Brotli/Components
@ -36,7 +36,7 @@ namespace BrotliLib.Brotli.Components.Data{
|
||||
/// <para/>
|
||||
/// Finally, the value is offset by (1 + direct code count), as all values below that can be represented using <see cref="DistanceCode.Direct"/> instead.
|
||||
/// </summary>
|
||||
public Complex(DistanceParameters parameters, int code) : base(code){
|
||||
public Complex(in DistanceParameters parameters, int code) : base(code){
|
||||
int directCodeCount = parameters.DirectCodeCount;
|
||||
this.postfixBitCount = parameters.PostfixBitCount;
|
||||
|
||||
|
@ -60,7 +60,7 @@ namespace BrotliLib.Brotli.Components.Data{
|
||||
|
||||
// Types
|
||||
|
||||
internal static IReadOnlyList<DistanceCode> ForValue(DistanceParameters parameters, BrotliGlobalState state, int value){
|
||||
internal static IReadOnlyList<DistanceCode> ForValue(in DistanceParameters parameters, BrotliGlobalState state, int value){
|
||||
List<DistanceCode> valid = new List<DistanceCode>();
|
||||
|
||||
valid.AddRange(Last.Codes.Where(code => code.CanEncodeValue(state, value)));
|
||||
@ -82,7 +82,7 @@ namespace BrotliLib.Brotli.Components.Data{
|
||||
return valid;
|
||||
}
|
||||
|
||||
private static DistanceCode Create(DistanceParameters parameters, int code){
|
||||
private static DistanceCode Create(in DistanceParameters parameters, int code){
|
||||
if (code < Last.Codes.Length){
|
||||
return Last.Codes[code];
|
||||
}
|
||||
|
@ -8,7 +8,7 @@ namespace BrotliLib.Brotli.Components.Header{
|
||||
/// Describes two parameters that modify the calculation of distances.
|
||||
/// https://tools.ietf.org/html/rfc7932#section-4
|
||||
/// </summary>
|
||||
public sealed class DistanceParameters{
|
||||
public readonly struct DistanceParameters{
|
||||
public const int MaxPostfixBitCount = 3;
|
||||
public const int MaxDirectCodeBits = 15;
|
||||
|
||||
|
@ -63,7 +63,7 @@ namespace BrotliLib.Brotli.Components.Utils{
|
||||
}
|
||||
}
|
||||
|
||||
public static IReadOnlyList<DistanceCode> MakeCode(this DistanceInfo info, DistanceParameters parameters, BrotliGlobalState state){
|
||||
public static IReadOnlyList<DistanceCode> MakeCode(this DistanceInfo info, in DistanceParameters parameters, BrotliGlobalState state){
|
||||
switch(info){
|
||||
case DistanceInfo.EndsAfterLiterals:
|
||||
case DistanceInfo.ImplicitCodeZero:
|
||||
|
Loading…
Reference in New Issue
Block a user