... | @@ -20,10 +20,10 @@ pub struct Row { |
... | @@ -20,10 +20,10 @@ pub struct Row { |
|
#[derive(Clone, Copy, Debug, Default, Serialize)]
|
|
#[derive(Clone, Copy, Debug, Default, Serialize)]
|
|
pub enum Tag {
|
|
pub enum Tag {
|
|
#[default]
|
|
#[default]
|
|
|
|
U16,
|
|
And,
|
|
And,
|
|
Or,
|
|
Or,
|
|
Xor,
|
|
Xor,
|
|
U16,
|
|
|
|
Bytecode,
|
|
Bytecode,
|
|
}
|
|
}
|
|
|
|
|
... | @@ -33,7 +33,7 @@ pub enum Tag { |
... | @@ -33,7 +33,7 @@ pub enum Tag { |
|
|
|
|
|
**tag**字段的不同场景
|
|
**tag**字段的不同场景
|
|
1. 数据标识,对LogicAnd、LogicOr、LogicXor、Bytecode等类型,使用下列定义Tag::And、Or、Xor、Bytecode
|
|
1. 数据标识,对LogicAnd、LogicOr、LogicXor、Bytecode等类型,使用下列定义Tag::And、Or、Xor、Bytecode
|
|
2. 对于10bit、16bit的范围的数据,Tag列未使用<br/>
|
|
2. 对于10bit、16bit的范围的数据,Tag列未使用,填入U16作为Tag默认值<br/>
|
|
**value_0**字段
|
|
**value_0**字段
|
|
1. And, Or, Xor操作中需要两个操作数,标识左边的操作数
|
|
1. And, Or, Xor操作中需要两个操作数,标识左边的操作数
|
|
2. Bytecode类型中标识 evm opcode
|
|
2. Bytecode类型中标识 evm opcode
|
... | @@ -66,12 +66,12 @@ pub enum Tag { |
... | @@ -66,12 +66,12 @@ pub enum Tag { |
|
| Bytecode | PUSH1 | 1 | 0|
|
|
| Bytecode | PUSH1 | 1 | 0|
|
|
| Bytecode | PUSH30 | 30 | 1|
|
|
| Bytecode | PUSH30 | 30 | 1|
|
|
| Bytecode | ...| ...| ...|
|
|
| Bytecode | ...| ...| ...|
|
|
| | 256 (不必从0开始) | U10_TAG | 1|
|
|
| U16 | 256 (不必从0开始) | U10_TAG | 1|
|
|
| | ... | U10_TAG| ... |
|
|
| U16 | ... | U10_TAG| ... |
|
|
| | 1279 | U10_TAG| 1024|
|
|
| U16 | 1279 | U10_TAG| 1024|
|
|
| | 1280 | | |
|
|
| U16 | 1280 | | |
|
|
| | .... | | |
|
|
| U16 | .... | | |
|
|
| | 65535 | | |
|
|
| U16 | 65535 | | |
|
|
|
|
|
|
## 使用
|
|
## 使用
|
|
|
|
|
... | | ... | |