1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
4 
5 namespace Microsoft.CSharp.RuntimeBinder.Semantics
6 {
7     internal abstract class ExprWithArgs : ExprWithType, IExprWithObject
8     {
ExprWithArgs(ExpressionKind kind, CType type)9         protected ExprWithArgs(ExpressionKind kind, CType type)
10             : base(kind, type)
11         {
12         }
13 
14         public ExprMemberGroup MemberGroup { get; set; }
15 
16         public Expr OptionalObject
17         {
18             get => MemberGroup.OptionalObject;
19             set => MemberGroup.OptionalObject = value;
20         }
21 
22         public Expr OptionalArguments { get; set; }
23 
GetSymWithType()24         public abstract SymWithType GetSymWithType();
25     }
26 }
27