Use variable interpolation for println!.

This commit is contained in:
Stephen Chung
2022-10-27 13:38:21 +08:00
parent 6b24cc151e
commit 3c2e031883
24 changed files with 132 additions and 150 deletions

View File

@@ -75,7 +75,7 @@ fn print_current_source(
}
if !src.is_empty() {
// Print just a line number for imported modules
println!("{} @ {:?}", src, pos);
println!("{src} @ {pos:?}");
} else {
// Print the current source line
print_source(lines, pos, 0, window);
@@ -100,17 +100,16 @@ fn print_error(input: &str, mut err: EvalAltResult) {
// Print error position
if pos.is_none() {
// No position
println!("{}", err);
println!("{err}");
} else {
// Specific position - print line text
println!("{}{}", line_no, lines[pos.line().unwrap() - 1]);
println!("{line_no}{}", lines[pos.line().unwrap() - 1]);
// Display position marker
println!(
"{0:>1$} {2}",
"{0:>1$} {err}",
"^",
line_no.len() + pos.position().unwrap(),
err
);
}
}
@@ -247,11 +246,11 @@ fn debug_callback(
BreakPoint::AtPosition { .. } => (),
BreakPoint::AtFunctionName { ref name, .. }
| BreakPoint::AtFunctionCall { ref name, .. } => {
println!("! Call to function {}.", name)
println!("! Call to function {name}.")
}
#[cfg(not(feature = "no_object"))]
BreakPoint::AtProperty { ref name, .. } => {
println!("! Property {} accessed.", name)
println!("! Property {name} accessed.")
}
_ => unreachable!(),
}
@@ -311,8 +310,8 @@ fn debug_callback(
println!("{:?}", node);
} else {
match source {
Some(source) => println!("{:?} {} @ {:?}", node, source, pos),
None => println!("{:?} @ {:?}", node, pos),
Some(source) => println!("{node:?} {source} @ {pos:?}"),
None => println!("{node:?} @ {pos:?}"),
}
}
println!();
@@ -327,7 +326,7 @@ fn debug_callback(
["list" | "l", n] if n.parse::<usize>().is_ok() => {
let num = n.parse::<usize>().unwrap();
if num == 0 || num > lines.len() {
eprintln!("\x1b[31mInvalid line: {}\x1b[39m", num);
eprintln!("\x1b[31mInvalid line: {num}\x1b[39m");
} else {
let pos = Position::new(num as u16, 0);
print_current_source(&mut context, source, pos, lines, (3, 6));
@@ -340,17 +339,17 @@ fn debug_callback(
["next" | "n"] => break Ok(DebuggerCommand::Next),
["scope"] => println!("{}", context.scope()),
["print" | "p", "this"] => match context.this_ptr() {
Some(value) => println!("=> {:?}", value),
Some(value) => println!("=> {value:?}"),
None => println!("`this` pointer is unbound."),
},
["print" | "p", var_name] => match context.scope().get_value::<Dynamic>(var_name) {
Some(value) => println!("=> {:?}", value),
None => eprintln!("Variable not found: {}", var_name),
Some(value) => println!("=> {value:?}"),
None => eprintln!("Variable not found: {var_name}"),
},
["print" | "p"] => {
println!("{}", context.scope().clone_visible());
if let Some(value) = context.this_ptr() {
println!("this = {:?}", value);
println!("this = {value:?}");
}
}
#[cfg(not(feature = "no_module"))]
@@ -379,7 +378,7 @@ fn debug_callback(
.iter()
.rev()
{
println!("{}", frame)
println!("{frame}")
}
}
["info" | "i", "break" | "b"] => Iterator::for_each(
@@ -396,7 +395,7 @@ fn debug_callback(
print!("{}", line_num);
print_source(lines, *pos, line_num.len(), (0, 0));
}
_ => println!("[{}] {}", i + 1, bp),
_ => println!("[{}] {bp}", i + 1),
},
),
["enable" | "en", n] => {
@@ -414,12 +413,12 @@ fn debug_callback(
.get_mut(n - 1)
.unwrap()
.enable(true);
println!("Break-point #{} enabled.", n)
println!("Break-point #{n} enabled.")
} else {
eprintln!("\x1b[31mInvalid break-point: {}\x1b[39m", n);
eprintln!("\x1b[31mInvalid break-point: {n}\x1b[39m");
}
} else {
eprintln!("\x1b[31mInvalid break-point: '{}'\x1b[39m", n);
eprintln!("\x1b[31mInvalid break-point: '{n}'\x1b[39m");
}
}
["disable" | "dis", n] => {
@@ -437,12 +436,12 @@ fn debug_callback(
.get_mut(n - 1)
.unwrap()
.enable(false);
println!("Break-point #{} disabled.", n)
println!("Break-point #{n} disabled.")
} else {
eprintln!("\x1b[31mInvalid break-point: {}\x1b[39m", n);
eprintln!("\x1b[31mInvalid break-point: {n}\x1b[39m");
}
} else {
eprintln!("\x1b[31mInvalid break-point: '{}'\x1b[39m", n);
eprintln!("\x1b[31mInvalid break-point: '{n}'\x1b[39m");
}
}
["delete" | "d", n] => {
@@ -458,12 +457,12 @@ fn debug_callback(
.debugger
.break_points_mut()
.remove(n - 1);
println!("Break-point #{} deleted.", n)
println!("Break-point #{n} deleted.")
} else {
eprintln!("\x1b[31mInvalid break-point: {}\x1b[39m", n);
eprintln!("\x1b[31mInvalid break-point: {n}\x1b[39m");
}
} else {
eprintln!("\x1b[31mInvalid break-point: '{}'\x1b[39m", n);
eprintln!("\x1b[31mInvalid break-point: '{n}'\x1b[39m");
}
}
["delete" | "d"] => {
@@ -481,14 +480,14 @@ fn debug_callback(
args,
enabled: true,
};
println!("Break-point added for {}", bp);
println!("Break-point added for {bp}");
context
.global_runtime_state_mut()
.debugger
.break_points_mut()
.push(bp);
} else {
eprintln!("\x1b[31mInvalid number of arguments: '{}'\x1b[39m", args);
eprintln!("\x1b[31mInvalid number of arguments: '{args}'\x1b[39m");
}
}
// Property name
@@ -498,7 +497,7 @@ fn debug_callback(
name: param[1..].into(),
enabled: true,
};
println!("Break-point added for {}", bp);
println!("Break-point added for {bp}");
context
.global_runtime_state_mut()
.debugger
@@ -521,14 +520,14 @@ fn debug_callback(
pos: Position::new(n as u16, 0),
enabled: true,
};
println!("Break-point added {}", bp);
println!("Break-point added {bp}");
context
.global_runtime_state_mut()
.debugger
.break_points_mut()
.push(bp);
} else {
eprintln!("\x1b[31mInvalid line number: '{}'\x1b[39m", n);
eprintln!("\x1b[31mInvalid line number: '{n}'\x1b[39m");
}
}
// Function name parameter
@@ -537,7 +536,7 @@ fn debug_callback(
name: param.trim().into(),
enabled: true,
};
println!("Break-point added for {}", bp);
println!("Break-point added for {bp}");
context
.global_runtime_state_mut()
.debugger
@@ -551,7 +550,7 @@ fn debug_callback(
pos,
enabled: true,
};
println!("Break-point added {}", bp);
println!("Break-point added {bp}");
context
.global_runtime_state_mut()
.debugger
@@ -588,7 +587,7 @@ fn debug_callback(
fn main() {
let title = format!("Rhai Debugger (version {})", env!("CARGO_PKG_VERSION"));
println!("{}", title);
println!("{title}");
println!("{0:=<1$}", "", title.len());
// Initialize scripting engine