xabc_lib/lnp.rs
1use getset::Getters;
2
3use crate::uint32_t;
4
5/// 根据索引访问行号程序
6#[derive(Debug, Getters, Default)]
7#[get = "pub"]
8pub struct LineNumberProgramIndex {
9 /// 一个数组,数组中每个元素的值是一个偏移量,指向一个行号程序。
10 offsets: Vec<uint32_t>,
11}
12
13impl LineNumberProgramIndex {
14 pub fn push(&mut self, offset: uint32_t) {
15 self.offsets.push(offset);
16 }
17}
18
19/// 行号程序由指令组成。每条指令都有一个字节的操作码和可选参数。
20/// 根据 opcode 参数的值可能被编码到指令中,或者指令需要从常量池中读取值。
21// NOTE: 不知道有啥作用,先不处理。
22#[allow(dead_code)]
23struct LineNumberProgram {}