Skip to content

Commit a63f643

Browse files
committed
Improve error messages
1 parent 7214f93 commit a63f643

File tree

1 file changed

+13
-13
lines changed

1 file changed

+13
-13
lines changed

gdnative-derive/src/methods.rs

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -98,15 +98,15 @@ pub(crate) fn derive_methods(item_impl: ItemImpl) -> TokenStream2 {
9898
if arg_count == 0 {
9999
return syn::Error::new(
100100
sig_span,
101-
"exported methods must take self parameter",
101+
"#[godot] exported methods must take self parameter",
102102
)
103103
.to_compile_error();
104104
}
105105

106106
if export_args.is_old_syntax && !exist_base_arg {
107107
return syn::Error::new(
108108
sig_span,
109-
"exported methods must take second parameter",
109+
"deprecated #[export] methods must take second parameter (base/owner)",
110110
)
111111
.to_compile_error();
112112
}
@@ -289,7 +289,7 @@ fn impl_gdnative_expose(ast: ItemImpl) -> (ItemImpl, ClassMethodExport) {
289289
None => {
290290
errors.push(syn::Error::new(
291291
nested_meta.span(),
292-
"name parameter requires string value",
292+
"`rpc` parameter requires string value",
293293
));
294294
}
295295
Some(Lit::Str(str)) => {
@@ -298,20 +298,20 @@ fn impl_gdnative_expose(ast: ItemImpl) -> (ItemImpl, ClassMethodExport) {
298298
if export_args.rpc_mode.replace(mode).is_some() {
299299
errors.push(syn::Error::new(
300300
nested_meta.span(),
301-
"rpc mode was set more than once",
301+
"`rpc` mode was set more than once",
302302
));
303303
}
304304
} else {
305305
errors.push(syn::Error::new(
306306
nested_meta.span(),
307-
format!("unexpected value for rpc: {}", value),
307+
format!("unexpected value for `rpc`: {}", value),
308308
));
309309
}
310310
}
311311
_ => {
312312
errors.push(syn::Error::new(
313313
nested_meta.span(),
314-
"unexpected type for rpc value, expected string",
314+
"unexpected type for `rpc` value, expected string",
315315
));
316316
}
317317
}
@@ -321,7 +321,7 @@ fn impl_gdnative_expose(ast: ItemImpl) -> (ItemImpl, ClassMethodExport) {
321321
None => {
322322
errors.push(syn::Error::new(
323323
nested_meta.span(),
324-
"name parameter requires string value",
324+
"`name` parameter requires string value",
325325
));
326326
}
327327
Some(Lit::Str(str)) => {
@@ -332,14 +332,14 @@ fn impl_gdnative_expose(ast: ItemImpl) -> (ItemImpl, ClassMethodExport) {
332332
{
333333
errors.push(syn::Error::new(
334334
nested_meta.span(),
335-
"name was set more than once",
335+
"`name` was set more than once",
336336
));
337337
}
338338
}
339339
_ => {
340340
errors.push(syn::Error::new(
341341
nested_meta.span(),
342-
"unexpected type for name value, expected string",
342+
"unexpected type for `name` value, expected string",
343343
));
344344
}
345345
}
@@ -348,19 +348,19 @@ fn impl_gdnative_expose(ast: ItemImpl) -> (ItemImpl, ClassMethodExport) {
348348
if lit.is_some() {
349349
errors.push(syn::Error::new(
350350
nested_meta.span(),
351-
"value for deref_return parameter is not valid",
351+
"`deref_return` does not take any values",
352352
));
353353
} else if export_args.is_deref_return {
354354
errors.push(syn::Error::new(
355355
nested_meta.span(),
356-
"deref_return was apply more than once",
356+
"`deref_return` was set more than once",
357357
));
358358
} else {
359359
export_args.is_deref_return = true;
360360
}
361361
} else {
362362
let msg = format!(
363-
"unknown option for export: `{}`",
363+
"unknown option for #[export]: `{}`",
364364
path.to_token_stream()
365365
);
366366
errors.push(syn::Error::new(nested_meta.span(), msg));
@@ -407,7 +407,7 @@ fn impl_gdnative_expose(ast: ItemImpl) -> (ItemImpl, ClassMethodExport) {
407407
if n < 2 {
408408
errors.push(syn::Error::new(
409409
arg.span(),
410-
"self or owner cannot be optional",
410+
"self or base cannot be optional",
411411
));
412412
} else {
413413
*optional_args.get_or_insert(0) += 1;

0 commit comments

Comments
 (0)