using System; using System.Collections.Generic; using System.Linq.Expressions; namespace Masuit.Tools.Dynamics; internal abstract class ClayBehavior : IClayBehavior { public virtual object InvokeMember(Func proceed, object self, string name, INamedEnumerable args) { return proceed(); } public virtual object GetMember(Func proceed, object self, string name) { return proceed(); } public virtual object SetMember(Func proceed, object self, string name, object value) { return proceed(); } public virtual object GetIndex(Func proceed, object self, IEnumerable keys) { return proceed(); } public virtual object SetIndex(Func proceed, object self, IEnumerable keys, object value) { return proceed(); } public virtual object Convert(Func proceed, object self, Type type, bool isExplicit) { return proceed(); } public virtual object BinaryOperation(Func proceed, object self, ExpressionType operation, object value) { return proceed(); } public virtual object GetMembers(Func proceed, object self, IDictionary members) { return proceed(); } public virtual object InvokeMemberMissing(Func proceed, object self, string name, INamedEnumerable args) { return proceed(); } public virtual object GetMemberMissing(Func proceed, object self, string name) { return proceed(); } public virtual object SetMemberMissing(Func proceed, object self, string name, object value) { return proceed(); } public virtual object ConvertMissing(Func proceed, object self, Type type, bool isExplicit) { return proceed(); } }