IParseElement.cs 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. /*-------------------------------------------------------------------------
  2. * 功能描述:IParseElement
  3. * 作者:xulisong
  4. * 创建时间: 2019/6/13 15:06:05
  5. * 版本号:v1.0
  6. * -------------------------------------------------------------------------*/
  7. using System.Collections.Generic;
  8. using RevitExport.Export;
  9. namespace RevitExport.Parse
  10. {
  11. /// <summary>
  12. /// 解析元素类
  13. /// </summary>
  14. public interface IParseElement
  15. {
  16. List<string> FastIndex();
  17. bool Match(ElementWrapper wrapper);
  18. List<string> Parse(ElementWrapper wrapper, ParseContext context);
  19. List<ElementWrapper> ArrangeRefElements(ElementWrapper wrapper, ParseContext context);
  20. }
  21. /// <summary>
  22. /// 解析元素类
  23. /// </summary>
  24. public interface IParseElement<in C, Result> where C: ParseContext
  25. {
  26. List<string> FastIndex();
  27. bool Match(ElementWrapper wrapper);
  28. List<Result> Parse(ElementWrapper wrapper, C context);
  29. List<ElementWrapper> ArrangeRefElements(ElementWrapper wrapper, C context);
  30. }
  31. }