<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />

Microsoft.CSharp.RuntimeBinder.Semantics.MethodOrPropertySymbol

namespace Microsoft.CSharp.RuntimeBinder.Semantics { internal class MethodOrPropertySymbol : ParentSymbol { public uint modOptCount; public new bool isStatic; public bool isOverride; public bool useMethInstead; public bool isOperator; public bool isParamArray; public bool isHideByName; public SymWithType swtSlot; public ErrorType errExpImpl; public CType RetType; public AggregateDeclaration declaration; public List<Name> ParameterNames { get; } public TypeArray Params { get; set; } public MethodOrPropertySymbol(); public bool IsParameterOptional(int index); public void SetOptionalParameter(int index); public bool HasOptionalParameters(); public bool HasDefaultParameterValue(int index); public void SetDefaultParameterValue(int index, CType type, CONSTVAL cv); public CONSTVAL GetDefaultParameterValue(int index); public CType GetDefaultParameterValueConstValType(int index); public bool IsMarshalAsParameter(int index); public void SetMarshalAsParameter(int index, UnmanagedType umt); public UnmanagedType GetMarshalAsParameterValue(int index); public bool MarshalAsObject(int index); public AggregateSymbol getClass(); public bool IsExpImpl(); public AggregateDeclaration containingDeclaration(); } }