Merge branch 'main' of https://github.com/Digital-EDA/digital-lsp-server
This commit is contained in:
commit
9c911a28d7
1
Cargo.lock
generated
1
Cargo.lock
generated
@ -1416,7 +1416,6 @@ dependencies = [
|
|||||||
name = "sv-parser"
|
name = "sv-parser"
|
||||||
version = "0.13.3"
|
version = "0.13.3"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"log",
|
|
||||||
"nom",
|
"nom",
|
||||||
"nom-greedyerror",
|
"nom-greedyerror",
|
||||||
"sv-parser-error",
|
"sv-parser-error",
|
||||||
|
@ -295,6 +295,7 @@ impl Instance {
|
|||||||
#[derive(Debug, Serialize, Deserialize, Clone)]
|
#[derive(Debug, Serialize, Deserialize, Clone)]
|
||||||
pub struct Module {
|
pub struct Module {
|
||||||
pub name: String,
|
pub name: String,
|
||||||
|
pub arch_name: String,
|
||||||
pub params: Vec<Parameter>,
|
pub params: Vec<Parameter>,
|
||||||
pub ports: Vec<Port>,
|
pub ports: Vec<Port>,
|
||||||
pub instances: Vec<Instance>,
|
pub instances: Vec<Instance>,
|
||||||
@ -363,6 +364,7 @@ impl FastHdlparam {
|
|||||||
pub fn new_module(&mut self, name: &str, range: Range) {
|
pub fn new_module(&mut self, name: &str, range: Range) {
|
||||||
let module = Module {
|
let module = Module {
|
||||||
name: name.to_string(),
|
name: name.to_string(),
|
||||||
|
arch_name: "".to_string(),
|
||||||
params: Vec::new(),
|
params: Vec::new(),
|
||||||
ports: Vec::new(),
|
ports: Vec::new(),
|
||||||
instances: Vec::new(),
|
instances: Vec::new(),
|
||||||
|
@ -115,6 +115,7 @@ fn parse_tokens(tokens: Vec<Token>) -> Vec<Module> {
|
|||||||
// 创建一个空的 module 并标记上 last_module_name
|
// 创建一个空的 module 并标记上 last_module_name
|
||||||
let module = Module {
|
let module = Module {
|
||||||
name: entity_name.to_string(),
|
name: entity_name.to_string(),
|
||||||
|
arch_name: "".to_string(),
|
||||||
params: Vec::new(),
|
params: Vec::new(),
|
||||||
ports: Vec::new(),
|
ports: Vec::new(),
|
||||||
instances: Vec::new(),
|
instances: Vec::new(),
|
||||||
@ -195,8 +196,7 @@ fn parse_tokens(tokens: Vec<Token>) -> Vec<Module> {
|
|||||||
} else {
|
} else {
|
||||||
let module = modules.iter_mut().find(|module| module.name == name).unwrap();
|
let module = modules.iter_mut().find(|module| module.name == name).unwrap();
|
||||||
let arch_name = get_value(&tokens[i+1]);
|
let arch_name = get_value(&tokens[i+1]);
|
||||||
let entity_name = module.name.clone();
|
module.arch_name = arch_name;
|
||||||
module.name = entity_name + "(" + arch_name.as_str() + ")";
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -232,6 +232,7 @@ fn do_vhdl_fast(
|
|||||||
let fake_content = vec![
|
let fake_content = vec![
|
||||||
core::hdlparam::Module {
|
core::hdlparam::Module {
|
||||||
name: ip_name.to_string(),
|
name: ip_name.to_string(),
|
||||||
|
arch_name: "".to_string(),
|
||||||
params: vec![],
|
params: vec![],
|
||||||
ports: vec![],
|
ports: vec![],
|
||||||
instances: vec![],
|
instances: vec![],
|
||||||
|
Loading…
x
Reference in New Issue
Block a user