// Copyright (c) The Avalonia Project. All rights reserved.
// Licensed under the MIT license. See licence.md file in the project root for full license information.
using System;
using System.ComponentModel;
using System.Linq;
using System.Reactive.Linq;
using System.Reflection;
using Avalonia.Utilities;
namespace Avalonia.Data.Core.Plugins
{
///
/// Reads a property from a standard C# object that optionally supports the
/// interface.
///
public class InpcPropertyAccessorPlugin : IPropertyAccessorPlugin
{
///
public bool Match(object obj, string propertyName) => true;
///
/// Starts monitoring the value of a property on an object.
///
/// The object.
/// The property name.
///
/// An interface through which future interactions with the
/// property will be made.
///
public IPropertyAccessor Start(WeakReference