当前位置: 首页 > 知识库问答 >
问题:

如何包括::B锁号在结构中的基板框架托盘

李良策
2023-03-14

有谁能告诉我如何包含

我当前的解决方案是添加一个通用参数T,其中Trait绑定到“Trait”。链接到代码。

我认为在中使用泛型结构作为函数参数类型decl_module!(第72行)确实导致以下错误:

错误[E0277]:T未实现std::fmt::Debug

--剪断--

=help: traitstd::fmt::Debug不为T实现

=注:由于std::fmt::Debug对于PhysicalProof的impl要求,需要

=注:需要,因为std::fmt::Debug的impl上的要求

=注:std::fmt::Debug::fmt

=注意:这个错误起源于一个宏(在夜间构建中,使用-Z宏回溯运行以获取更多信息)

帮助:考虑进一步限制这个界限

英普

我尝试在该结构中手动实现fmt::Debug,但这不是解决方案,或者我无法正确地执行它。


共有2个答案

缪兴腾
2023-03-14

Guillaume从基板技术元素聊天中提出的解决问题的建议:

在守则中:


/// Structure that contains the proof
#[derive(Debug)]
pub struct PhysicalProof<T, ProofData> where
  ProofData: Codec + Clone + Debug + Decode + Encode + Eq + PartialEq,
  T: Trait,
{
  proof: ProofData,
  date: T::BlockNumber,
}

会做impl

一种解决方案是手动执行,另一种解决方案是:

/// Structure that contains the proof
#[derive(Debug)]
pub struct PhysicalProof<BlockNumber ProofData> where
  ProofData: Codec + Clone + Debug + Decode + Encode + Eq + PartialEq, BLockNumber: ...
{
  proof: ProofData,
  date: BlockNumber,
}

竺承望
2023-03-14

要为as结构派生Debug,其所有字段必须能够实现Debug。现在,编译器不知道t是否可调试

通过添加Debug作为类型T的绑定,可以告诉编译器T实现了Debug

#[derive(Debug)]
pub struct PhysicalProof<T, ProofData> where
    // `T` must implement `Debug`   
    T: Trait + Debug,
{
    proof: ProofData,
    date: T::BlockNumber,
}
 类似资料:
  • 类似于let命令,((...))结构允许算术计算和求值. 它最简单的形式a=$(( 5 + 3 ))会把变量"a"的值设置成"5 + 3"或8. 但是,在Bash中双括号结构也是遵循C风格的变量操作的一种机制. 例子 9-30. C风格的变量操作 1 #!/bin/bash 2 # 用((...))结构来使用C风格操作符来处理变量. 3 4 5 echo 6

  • 框架的入口文件为 index.php .htaccess 是为了apache下隐藏index.php文件用的 MoreApp.php 是项目配置,更多项目或者二级域名下部署使用  Core文件夹下是框架核心类库 Library是第三方扩展类库 G-framework是项目文件夹,此文件夹名称可以更改,比如可以改为:App1

  • 问题内容: 我在将我的框架与利用该框架的代码链接时遇到麻烦。具体来说,链接器无法找到泛型结构扩展的符号。 这是Optional的扩展之一: 如果代码是在应用程序的主要部分内编译的,则此方法在游乐场或应用程序中非常有用。但是,当我尝试将其编译到框架中时,应用程序(甚至框架的测试)会产生以下链接器错误: 架构i386的未定义符号:“ __ TFSq2orU__fGSqQ__FQQ”,引用自:Optio

  • 问题内容: 我正在尝试使以下内容起作用: 导致异常的部分是: 编辑: 经过进一步观察, (在首次致电后,没有)为我完成了这项工作。 问题答案: 看来您无法对查询中的children集合进行排序。在查询之后进行排序,或者在第二个查询中加载子级。 类似的问题和答案在这里

  • 本篇文章通过框架示意图理解UI2的框架构成和核心,并对应介绍system目录。 UI2框架结构图 看框架结构图,为了说明方便,每个框的左上角都做了数字标记。我们由底层向上理解: 最下层(框0)是模块化框架,UI2目前遵循AMD模块化标准,采用requirejs实现。这是UI2的基础,UI2所有的资源(js、css、html等)都是模块,都采用模块化方式引入,采用模块化方式管理依赖; 第二层(框1)

  • 本篇文章通过框架示意图理解UI2的框架构成和核心,并对应介绍system目录。 UI2框架结构图 看框架结构图,为了说明方便,每个框的左上角都做了数字标记。我们由底层向上理解: 最下层(框0)是模块化框架,UI2目前遵循AMD模块化标准,采用requirejs实现。这是UI2的基础,UI2所有的资源(js、css、html等)都是模块,都采用模块化方式引入,采用模块化方式管理依赖; 第二层(框1)