Skip to content

Commit b7965db

Browse files
committed
rm ref
1 parent 70c885b commit b7965db

File tree

5 files changed

+62
-78
lines changed

5 files changed

+62
-78
lines changed

src/generate/peripheral.rs

+36-36
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,8 @@ pub fn render(
126126
// Build up an alternate erc list by expanding any derived registers
127127
let mut alt_erc: Vec<RegisterCluster> = registers
128128
.iter()
129-
.filter_map(|r| match r.derived_from {
130-
Some(ref derived) => {
129+
.filter_map(|r| match &r.derived_from {
130+
Some(derived) => {
131131
let ancestor = match reg_map.get(derived) {
132132
Some(r) => r,
133133
None => {
@@ -139,11 +139,11 @@ pub fn render(
139139
}
140140
};
141141

142-
let d = match **ancestor {
143-
Register::Array(ref info, ref array_info) => {
142+
let d = match *ancestor {
143+
Register::Array(info, array_info) => {
144144
Some(Register::Array(derive_reg_info(*r, info), array_info.clone()).into())
145145
}
146-
Register::Single(ref info) => {
146+
Register::Single(info) => {
147147
Some(Register::Single(derive_reg_info(*r, info)).into())
148148
}
149149
};
@@ -231,9 +231,9 @@ impl Region {
231231
let mut idents: Vec<_> = self
232232
.fields
233233
.iter()
234-
.filter_map(|f| match f.field.ident {
234+
.filter_map(|f| match &f.field.ident {
235235
None => None,
236-
Some(ref ident) => Some(ident.as_ref()),
236+
Some(ident) => Some(ident.as_ref()),
237237
})
238238
.collect();
239239
if idents.is_empty() {
@@ -272,9 +272,9 @@ impl Region {
272272
let idents: Vec<_> = self
273273
.fields
274274
.iter()
275-
.filter_map(|f| match f.field.ident {
275+
.filter_map(|f| match &f.field.ident {
276276
None => None,
277-
Some(ref ident) => Some(ident.as_ref()),
277+
Some(ident) => Some(ident.as_ref()),
278278
})
279279
.collect();
280280

@@ -659,9 +659,9 @@ fn expand(
659659
let mut ercs_expanded = vec![];
660660

661661
for erc in ercs {
662-
ercs_expanded.extend(match erc {
663-
RegisterCluster::Register(ref register) => expand_register(register, defs, name)?,
664-
RegisterCluster::Cluster(ref cluster) => expand_cluster(cluster, defs)?,
662+
ercs_expanded.extend(match &erc {
663+
RegisterCluster::Register(register) => expand_register(register, defs, name)?,
664+
RegisterCluster::Cluster(cluster) => expand_cluster(cluster, defs)?,
665665
});
666666
}
667667

@@ -676,16 +676,16 @@ fn cluster_size_in_bits(info: &ClusterInfo, defs: &Defaults) -> Result<u32> {
676676
let mut size = 0;
677677

678678
for c in &info.children {
679-
let end = match *c {
680-
RegisterCluster::Register(ref reg) => {
679+
let end = match c {
680+
RegisterCluster::Register(reg) => {
681681
let reg_size: u32 = expand_register(reg, defs, None)?
682682
.iter()
683683
.map(|rbf| rbf.size)
684684
.sum();
685685

686686
(reg.address_offset * BITS_PER_BYTE) + reg_size
687687
}
688-
RegisterCluster::Cluster(ref clust) => {
688+
RegisterCluster::Cluster(clust) => {
689689
(clust.address_offset * BITS_PER_BYTE) + cluster_size_in_bits(clust, defs)?
690690
}
691691
};
@@ -705,14 +705,14 @@ fn expand_cluster(cluster: &Cluster, defs: &Defaults) -> Result<Vec<RegisterBloc
705705
.or_else(|_e| cluster_size_in_bits(cluster, defs))
706706
.chain_err(|| format!("Cluster {} has no determinable `size` field", cluster.name))?;
707707

708-
match *cluster {
709-
Cluster::Single(ref info) => cluster_expanded.push(RegisterBlockField {
708+
match cluster {
709+
Cluster::Single(info) => cluster_expanded.push(RegisterBlockField {
710710
field: convert_svd_cluster(cluster),
711711
description: info.description.clone(),
712712
offset: info.address_offset,
713713
size: cluster_size,
714714
}),
715-
Cluster::Array(ref info, ref array_info) => {
715+
Cluster::Array(info, array_info) => {
716716
let sequential_addresses = cluster_size == array_info.dim_increment * BITS_PER_BYTE;
717717

718718
// if dimIndex exists, test if it is a sequence of numbers from 0 to dim
@@ -762,14 +762,14 @@ fn expand_register(
762762
.or(defs.size)
763763
.ok_or_else(|| format!("Register {} has no `size` field", register.name))?;
764764

765-
match *register {
766-
Register::Single(ref info) => register_expanded.push(RegisterBlockField {
765+
match register {
766+
Register::Single(info) => register_expanded.push(RegisterBlockField {
767767
field: convert_svd_register(register, name),
768768
description: info.description.clone().unwrap(),
769769
offset: info.address_offset,
770770
size: register_size,
771771
}),
772-
Register::Array(ref info, ref array_info) => {
772+
Register::Array(info, array_info) => {
773773
let sequential_addresses = register_size == array_info.dim_increment * BITS_PER_BYTE;
774774

775775
// if dimIndex exists, test if it is a sequence of numbers from 0 to dim
@@ -819,9 +819,9 @@ fn cluster_block(
819819
let description = util::escape_brackets(util::respace(&c.description).as_ref());
820820

821821
// Generate the register block.
822-
let mod_name = match *c {
823-
Cluster::Single(ref info) => &info.name,
824-
Cluster::Array(ref info, ref _ai) => &info.name,
822+
let mod_name = match c {
823+
Cluster::Single(info) => &info.name,
824+
Cluster::Array(info, _ai) => &info.name,
825825
}
826826
.replace("[%s]", "")
827827
.replace("%s", "");
@@ -886,9 +886,9 @@ fn expand_svd_register(register: &Register, name: Option<&str>) -> Vec<syn::Fiel
886886

887887
let mut out = vec![];
888888

889-
match *register {
890-
Register::Single(ref _info) => out.push(convert_svd_register(register, name)),
891-
Register::Array(ref info, ref array_info) => {
889+
match register {
890+
Register::Single(_info) => out.push(convert_svd_register(register, name)),
891+
Register::Array(info, array_info) => {
892892
let has_brackets = info.name.contains("[%s]");
893893

894894
let indices = array_info
@@ -957,14 +957,14 @@ fn convert_svd_register(register: &Register, name: Option<&str>) -> syn::Field {
957957
)
958958
};
959959

960-
match *register {
961-
Register::Single(ref info) => syn::Field {
960+
match register {
961+
Register::Single(info) => syn::Field {
962962
ident: Some(Ident::new(info.name.to_sanitized_snake_case())),
963963
vis: syn::Visibility::Public,
964964
attrs: vec![],
965965
ty: name_to_ty(&info.name, name),
966966
},
967-
Register::Array(ref info, ref array_info) => {
967+
Register::Array(info, array_info) => {
968968
let has_brackets = info.name.contains("[%s]");
969969

970970
let nb_name = if has_brackets {
@@ -1011,9 +1011,9 @@ fn expand_svd_cluster(cluster: &Cluster) -> Vec<syn::Field> {
10111011

10121012
let mut out = vec![];
10131013

1014-
match *cluster {
1015-
Cluster::Single(ref _info) => out.push(convert_svd_cluster(cluster)),
1016-
Cluster::Array(ref info, ref array_info) => {
1014+
match &cluster {
1015+
Cluster::Single(_info) => out.push(convert_svd_cluster(cluster)),
1016+
Cluster::Array(info, array_info) => {
10171017
let has_brackets = info.name.contains("[%s]");
10181018

10191019
let indices = array_info
@@ -1071,14 +1071,14 @@ fn convert_svd_cluster(cluster: &Cluster) -> syn::Field {
10711071
)
10721072
};
10731073

1074-
match *cluster {
1075-
Cluster::Single(ref info) => syn::Field {
1074+
match cluster {
1075+
Cluster::Single(info) => syn::Field {
10761076
ident: Some(Ident::new(info.name.to_sanitized_snake_case())),
10771077
vis: syn::Visibility::Public,
10781078
attrs: vec![],
10791079
ty: name_to_ty(&info.name),
10801080
},
1081-
Cluster::Array(ref info, ref array_info) => {
1081+
Cluster::Array(info, array_info) => {
10821082
let has_brackets = info.name.contains("[%s]");
10831083

10841084
let name = if has_brackets {

src/generate/register.rs

+15-22
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ pub fn fields(
254254
} else {
255255
format!("Bits {}:{}", offset, offset + width - 1)
256256
};
257-
if let Some(ref d) = f.description {
257+
if let Some(d) = &f.description {
258258
description.push_str(" - ");
259259
description.push_str(&*util::respace(&util::escape_brackets(d)));
260260
}
@@ -347,14 +347,12 @@ pub fn fields(
347347
.collect::<Result<Vec<_>>>()?;
348348

349349
let pc_r = &f.pc_r;
350-
if let Some(ref base) = base {
350+
if let Some(base) = &base {
351351
let pc = base.field.to_sanitized_upper_case();
352352
let base_pc_r = Ident::new(&*format!("{}R", pc));
353353
let desc = format!("Possible values of the field `{}`", f.name,);
354354

355-
if let (Some(ref peripheral), Some(ref register)) =
356-
(base.peripheral, base.register)
357-
{
355+
if let (Some(peripheral), Some(register)) = (&base.peripheral, &base.register) {
358356
let pmod_ = peripheral.to_sanitized_snake_case();
359357
let rmod_ = register.to_sanitized_snake_case();
360358
let pmod_ = Ident::new(&*pmod_);
@@ -364,7 +362,7 @@ pub fn fields(
364362
#[doc = #desc]
365363
pub type #pc_r = ::#pmod_::#rmod_::#base_pc_r;
366364
});
367-
} else if let Some(ref register) = base.register {
365+
} else if let Some(register) = &base.register {
368366
let mod_ = register.to_sanitized_snake_case();
369367
let mod_ = Ident::new(&*mod_);
370368

@@ -611,9 +609,7 @@ pub fn fields(
611609
let pc = base.field.to_sanitized_upper_case();
612610
let base_pc_w = Ident::new(&*format!("{}W", pc));
613611

614-
if let (Some(ref peripheral), Some(ref register)) =
615-
(base.peripheral, base.register)
616-
{
612+
if let (Some(peripheral), Some(register)) = (&base.peripheral, &base.register) {
617613
let pmod_ = peripheral.to_sanitized_snake_case();
618614
let rmod_ = register.to_sanitized_snake_case();
619615
let pmod_ = Ident::new(&*pmod_);
@@ -628,7 +624,7 @@ pub fn fields(
628624
quote! {
629625
::#pmod_::#rmod_::#base_pc_w
630626
}
631-
} else if let Some(ref register) = base.register {
627+
} else if let Some(register) = &base.register {
632628
let mod_ = register.to_sanitized_snake_case();
633629
let mod_ = Ident::new(&*mod_);
634630

@@ -807,8 +803,8 @@ pub fn fields(
807803
}
808804

809805
fn unsafety(write_constraint: Option<&WriteConstraint>, width: u32) -> Option<Ident> {
810-
match write_constraint {
811-
Some(&WriteConstraint::Range(ref range))
806+
match &write_constraint {
807+
Some(&WriteConstraint::Range(range))
812808
if u64::from(range.min) == 0 && u64::from(range.max) == (1u64 << width) - 1 =>
813809
{
814810
// the SVD has acknowledged that it's safe to write
@@ -844,7 +840,7 @@ fn lookup<'a>(
844840
let evs = evs
845841
.iter()
846842
.map(|evs| {
847-
if let Some(ref base) = evs.derived_from {
843+
if let Some(base) = &evs.derived_from {
848844
let mut parts = base.split('.');
849845

850846
match (parts.next(), parts.next(), parts.next(), parts.next()) {
@@ -882,7 +878,7 @@ fn lookup<'a>(
882878
})
883879
.collect::<Result<Vec<_>>>()?;
884880

885-
for &(ref evs, ref base) in evs.iter() {
881+
for (evs, base) in evs.iter() {
886882
if evs.usage == Some(usage) {
887883
return Ok(Some((*evs, base.clone())));
888884
}
@@ -996,10 +992,7 @@ fn lookup_in_register<'r>(
996992
}),
997993
))
998994
} else {
999-
let fields = matches
1000-
.iter()
1001-
.map(|&(ref f, _)| &f.name)
1002-
.collect::<Vec<_>>();
995+
let fields = matches.iter().map(|(f, _)| &f.name).collect::<Vec<_>>();
1003996
Err(format!(
1004997
"Fields {:?} have an \
1005998
enumeratedValues named {}",
@@ -1039,7 +1032,7 @@ fn periph_all_registers<'a>(p: &'a Peripheral) -> Vec<&'a Register> {
10391032
return par;
10401033
}
10411034

1042-
if let Some(ref regs) = p.registers {
1035+
if let Some(regs) = &p.registers {
10431036
for r in regs.iter() {
10441037
rem.push(r);
10451038
}
@@ -1052,11 +1045,11 @@ fn periph_all_registers<'a>(p: &'a Peripheral) -> Vec<&'a Register> {
10521045
}
10531046

10541047
let b = b.unwrap();
1055-
match *b {
1056-
RegisterCluster::Register(ref reg) => {
1048+
match b {
1049+
RegisterCluster::Register(reg) => {
10571050
par.push(reg);
10581051
}
1059-
RegisterCluster::Cluster(ref cluster) => {
1052+
RegisterCluster::Cluster(cluster) => {
10601053
for c in cluster.children.iter() {
10611054
rem.push(c);
10621055
}

src/lib.rs

+1-5
Original file line numberDiff line numberDiff line change
@@ -424,15 +424,11 @@
424424
425425
#![recursion_limit = "128"]
426426

427-
extern crate cast;
428-
extern crate either;
429427
#[macro_use]
430428
extern crate error_chain;
431-
extern crate inflections;
432429
#[macro_use]
433430
extern crate quote;
434-
extern crate svd_parser as svd;
435-
extern crate syn;
431+
use svd_parser as svd;
436432

437433
mod errors;
438434
mod generate;

src/main.rs

+2-7
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,10 @@
11
#![recursion_limit = "128"]
22

3-
extern crate cast;
4-
extern crate clap;
5-
extern crate either;
63
#[macro_use]
74
extern crate error_chain;
8-
extern crate inflections;
95
#[macro_use]
106
extern crate quote;
11-
extern crate svd_parser as svd;
12-
extern crate syn;
7+
use svd_parser as svd;
138

149
mod errors;
1510
mod generate;
@@ -94,7 +89,7 @@ fn run() -> Result<()> {
9489
}
9590

9691
fn main() {
97-
if let Err(ref e) = run() {
92+
if let Err(e) = &run() {
9893
let stderr = io::stderr();
9994
let mut stderr = stderr.lock();
10095

0 commit comments

Comments
 (0)