//
//  ParameterInfo.cs
//
//  Copyright (c) František Boháček. All rights reserved.
//  Licensed under the MIT license. See LICENSE file in the project root for full license information.
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp.Syntax;
namespace NosSmooth.PacketSerializersGenerator.Data;
/// 
/// Information about a parameter of a packet constructor.
/// 
/// The parameter's syntax.
/// The type of the parameter.
/// Whether the parameter type is nullable.
/// The list of all of the attribute on the parameter that are used for the generation of serializers.
/// 
/// 
/// 
public record ParameterInfo
(
    ParameterSyntax Parameter,
    ITypeSymbol Type,
    bool Nullable,
    IReadOnlyList Attributes,
    string Name,
    int ConstructorIndex,
    int PacketIndex
);