首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Delphi使用NativeXml处理XML(四)

    4.2.1.ComponentCreateFromXmlFile   unit NativeXmlObjectStorage   function ComponentCreateFromXmlFile(const FileName: string; Owner: TComponent; const Name: string): TComponent;   从文件名称为FileName的XML文件读取并创建组件。为了成功地从头开始创建组件,组件的类必须事先调用RegisterClass进行登记。添加到指定Owner组件的子组件列表。这通常是一个形式。指定Name作为创建的组件的新组件的名称。 注:它调用ComponentCreateFromXmlStream实现。 4.2.2.ComponentCreateFromXmlNode   function ComponentCreateFromXmlNode(ANode: TXmlNode; Owner: TComponent; const Name: string): TComponent;   从TXmlNode类型的ANode节点读取并创建组件。为了成功地从头开始创建组件,组件的类必须事先调用RegisterClass进行登记。添加到指定Owner组件的子组件列表。这通常是一个形式。指定Name作为创建的组件的新组件的名称。 注:它使用TsdXmlObjectReader类实现。 4.2.3.ComponentCreateFromXmlStream   function ComponentCreateFromXmlStream(S: TStream; Owner: TComponent; const Name: string): TComponent;   从XML流类型的S中读取并创建组件。为了成功地从头开始创建组件,组件的类必须事先调用RegisterClass进行登记。添加到指定Owner组件的子组件列表。这通常是一个形式。指定Name作为创建的组件的新组件的名称。 注:它调用ComponentCreateFromXmlNode实现。 4.2.4.ComponentCreateFromXmlString   function ComponentCreateFromXmlString(const Value: string; Owner: TComponent; const Name: string): TComponent;   从XML字符串类型的Value中读取并创建组件。为了成功地从头开始创建组件,组件的类必须事先调用RegisterClass进行登记。添加到指定Owner组件的子组件列表。这通常是一个形式。指定Name作为创建的组件的新组件的名称。 注:它调用ComponentCreateFromXmlStream实现。 4.2.5.ComponentSaveToXmlFile   procedure ComponentSaveToXmlFile(AComponent: TComponent; const FileName: string; AParent: TComponent);   存储组件AComponent所有公布的属性到名为FileName 的XML文件。指定AParent为了储存Parent正确的方法和事件参考。 注:它调用ObjectSaveToXmlFile实现。 4.2.6.ComponentSaveToXmlNode   procedure ComponentSaveToXmlNode(AComponent: TComponent; ANode: TXmlNode; AParent: TComponent);   存储组件AComponent所有公布的属性到TXmlNode格式的ANode中。指定AParent为了储存Parent正确的方法和事件参考。 注:它调用ObjectSaveToXmlNode实现。 4.2.7.ComponentSaveToXmlStream   procedure ComponentSaveToXmlStream(AComponent: TComponent; S: TStream; AParent: TComponent);   存储组件AComponent所有公布的属性到XML格式的流S中。指定AParent为了储存Parent正确的方法和事件参考。 注:它调用ObjectSaveToXmlStream实现。 4.2.8.ComponentSaveToXmlString   function ComponentSaveToXmlString(AComponent: TComponent; AParent: TComponent): string;   存储组件AComponent所有公布的属

    03

    【从零开始学深度学习编译器】十八,MLIR中的Interfaces

    这篇文章用来了解一下MLIR中的Interfaces(接口)。MLIR是一个通用可扩展的框架,由不同层次的具有 特定属性,Operation以及Type的Dialects构成。正是由于Dialects的分层设计, 使得MLIR可以表达多种语意和抽象级别的Operation。但这个分级设计也存在一个缺点,那就是在不同的Dialect层次进行Operation转换或者做变换(Pass)的时候我们需要明确每个Dialect下的每个Operation的具体语意,否则就可能会转换或变换失败。其实基于MLIR开发过的读者应该碰到过组合一些MLIR Pass对一个MLIR文件进行Lower的时候,有可能出现Op转换失败的情况。为了缓解这种情况,MLIR提出了Interfaces。实际上在【从零开始学深度学习编译器】十三,如何在MLIR里面写Pass? 这里我们已经利用过Interfaces来实现内联以及形状推导Pass了。这一节就更深入的了解一下MLIR中的Interfaces,最后还结合了OneFlow IR中的UserOpCompatibleInterface例子来进一步加深了解。

    02

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券