Skip to content

Commit ecd9557

Browse files
committed
Merge pull request #80 from cassiersg/master
Fix #79
2 parents b7579f6 + 673b8d5 commit ecd9557

File tree

3 files changed

+29
-1
lines changed

3 files changed

+29
-1
lines changed

src/items.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ impl<'a> FmtVisitor<'a> {
2727
explicit_self: Option<&ast::ExplicitSelf>,
2828
generics: &ast::Generics,
2929
unsafety: &ast::Unsafety,
30+
constness: &ast::Constness,
3031
abi: &abi::Abi,
3132
vis: ast::Visibility,
3233
span_end: BytePos)
@@ -40,6 +41,7 @@ impl<'a> FmtVisitor<'a> {
4041
explicit_self,
4142
generics,
4243
unsafety,
44+
constness,
4345
abi,
4446
vis,
4547
span_end,
@@ -74,6 +76,7 @@ impl<'a> FmtVisitor<'a> {
7476
Some(&sig.explicit_self),
7577
&sig.generics,
7678
&sig.unsafety,
79+
&sig.constness,
7780
&sig.abi,
7881
ast::Visibility::Inherited,
7982
span_end,
@@ -92,6 +95,7 @@ impl<'a> FmtVisitor<'a> {
9295
explicit_self: Option<&ast::ExplicitSelf>,
9396
generics: &ast::Generics,
9497
unsafety: &ast::Unsafety,
98+
constness: &ast::Constness,
9599
abi: &abi::Abi,
96100
vis: ast::Visibility,
97101
span_end: BytePos,
@@ -111,6 +115,9 @@ impl<'a> FmtVisitor<'a> {
111115
if let &ast::Unsafety::Unsafe = unsafety {
112116
result.push_str("unsafe ");
113117
}
118+
if let &ast::Constness::Const = constness {
119+
result.push_str("const ");
120+
}
114121
if *abi != abi::Rust {
115122
result.push_str("extern ");
116123
result.push_str(&abi.to_string());

src/visitor.rs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,13 +98,19 @@ impl<'a, 'v> visit::Visitor<'v> for FmtVisitor<'a> {
9898

9999
let indent = self.block_indent;
100100
match fk {
101-
visit::FkItemFn(ident, ref generics, ref unsafety, ref abi, vis) => {
101+
visit::FkItemFn(ident,
102+
ref generics,
103+
ref unsafety,
104+
ref constness,
105+
ref abi,
106+
vis) => {
102107
let new_fn = self.rewrite_fn(indent,
103108
ident,
104109
fd,
105110
None,
106111
generics,
107112
unsafety,
113+
constness,
108114
abi,
109115
vis,
110116
b.span.lo);
@@ -117,6 +123,7 @@ impl<'a, 'v> visit::Visitor<'v> for FmtVisitor<'a> {
117123
Some(&sig.explicit_self),
118124
&sig.generics,
119125
&sig.unsafety,
126+
&sig.constness,
120127
&sig.abi,
121128
vis.unwrap_or(ast::Visibility::Inherited),
122129
b.span.lo);

tests/idem/fn.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,20 @@ pub fn render<'a,
5858
render_opts(g, w, &[])
5959
}
6060

61+
const fn foo() {
62+
x;
63+
}
64+
65+
pub const fn foo() {
66+
x;
67+
}
68+
69+
impl Foo {
70+
const fn foo() {
71+
x;
72+
}
73+
}
74+
6175
fn main() {
6276
let _ = function(move || 5);
6377
let _ = move || 42;

0 commit comments

Comments
 (0)