/*-------------------------------------------------------------------------
 * 功能描述：IParseElement
 * 作者：xulisong
 * 创建时间： 2019/6/13 15:06:05
 * 版本号：v1.0
 *  -------------------------------------------------------------------------*/

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RevitExport
{
    /// <summary>
    /// 解析元素类
    /// </summary>
    public interface IParseElement
    {
        bool Match(ElementWrapper wrapper);
        /// <summary>
        /// 解析指定元素
        /// </summary>
        /// <param name="wrapper"></param>
        /// <param name="context"></param>
        void Parse(ElementWrapper wrapper, ParseContext context);
    }
    /// <summary>
    /// 解析元素类
    /// </summary>
    public interface IParseElement<C> where C: ParseContext
    {
        bool Match(ElementWrapper wrapper);
        /// <summary>
        /// 解析指定元素
        /// </summary>
        /// <param name="wrapper"></param>
        /// <param name="context"></param>
        void Parse(ElementWrapper wrapper, C context);
    }
}
