private static Func<IEnvironment, IJsValue, IReference> CreateGetMemberReference(IAst name) { if (name is IAstWithName) { var literalName = (name as IAstWithName).Name; return (env, obj) => obj.GetReference(literalName); } return (env, obj) => obj.GetReference(name.Evaluate(env)); }
public IndexedMember(IAst instance, IAst member) : base(instance, member, (env, obj) => obj.GetReference(member.Evaluate(env))) { }