fn fmt_style(plain: &String) -> String {
let span_begin = String::from(
"<span style="font-family: 'Source Code Pro',
Consolas, 'Ubuntu Mono', Menlo, 'DejaVu Sans Mono',
monospace, monospace !important;">"
);
let span_end = "</span>";
span_begin + plain + span_end
}
pub fn event_dot_ref_go_out_out_scope(my_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0} goes out of scope",
my_name_fmt
)
}
pub fn event_dot_owner_go_out_out_scope(my_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0} goes out of scope", my_name_fmt ) }
pub fn event_dot_init_param(my_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0} is initialized as the function argument",
my_name_fmt
)
}
pub fn event_dot_copy_to(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource is copied",
my_name_fmt
)
}
pub fn event_dot_move_to(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource is moved",
my_name_fmt
)
}
pub fn event_dot_move_to_caller(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource is moved to the caller",
my_name_fmt
)
}
pub fn event_dot_static_lend(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource is immutably borrowed",
my_name_fmt
)
}
pub fn event_dot_mut_lend(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource is mutably borrowed",
my_name_fmt
)
}
pub fn event_dot_static_return(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s mutable borrow ends",
my_name_fmt
)
}
pub fn event_dot_mut_return(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s immutable borrow ends",
my_name_fmt
)
}
pub fn event_dot_acquire(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0} acquires ownership of a resource",
my_name_fmt
)
}
pub fn event_dot_copy_from(my_name: &String, target_name: &String) -> String {
format!(
"{0} is initialized by copy from {1}",
my_name,
target_name
)
}
pub fn event_dot_mut_borrow(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0} mutably borrows a resource",
my_name_fmt
)
}
pub fn event_dot_static_borrow(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0} immutably borrows a resource",
my_name_fmt
)
}
pub fn event_dot_static_reacquire(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource is no longer immutably borrowed",
my_name_fmt
)
}
pub fn event_dot_mut_reacquire(my_name: &String, _target_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource is no longer mutably borrowed",
my_name_fmt
)
}
pub fn arrow_move_val_to_val(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s resource is moved to {1}",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_copy_val_to_val(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s resource is copied to {1}",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_move_val_to_func(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s resource is moved to function {1}",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_copy_val_to_func(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s resource is copied to function {1}",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_move_func_to_val(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"Function {0}'s resource is moved to {1}",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_static_lend_val_to_val(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s resource is immutably borrowed by {1}",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_static_lend_val_to_func(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s resource is immutably borrowed by function {1}",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_mut_lend_val_to_val(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s resource is mutably borrowed by {1}",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_mut_lend_val_to_func(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s resource is mutably borrowed by function {1}",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_static_return(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s immutable borrow of {1}'s resource ends",
from_name_fmt,
to_name_fmt
)
}
pub fn arrow_mut_return(from_name: &String, to_name: &String) -> String {
let from_name_fmt = fmt_style(from_name);
let to_name_fmt = fmt_style(to_name);
format!(
"{0}'s mutable borrow of {1}'s resource ends",
from_name_fmt,
to_name_fmt
)
}
pub fn state_out_of_scope(my_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0} is out of scope",
my_name_fmt
)
}
pub fn state_resource_moved(my_name: &String, _to_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource was moved, so {0} no longer has ownership",
my_name_fmt
)
}
pub fn state_resource_revoked(my_name: &String, _to_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource is mutably borrowed, so it cannot access the resource",
my_name_fmt,
)
}
pub fn state_full_privilege(my_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0} is the owner of the resource", my_name_fmt
)
}
pub fn state_partial_privilege(my_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"{0}'s resource is being shared by one or more variables",
my_name_fmt
)
}
pub fn state_invalid(my_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"something is wrong with the timeline of {0}",
my_name_fmt
)
}
pub fn structure(my_name: &String) -> String {
let my_name_fmt = fmt_style(my_name);
format!(
"the components in the box belong to struct {0}",
my_name_fmt
)
}