summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2021-03-03 23:32:29 +0100
committerLaurenz <laurmaedje@gmail.com>2021-03-03 23:32:29 +0100
commit5157c1e276b1314b345bb8215b5a89a2ccb9c5d7 (patch)
treee608628322d573e9dc141e44ddb9a799cc702579
parent34f839c7177a041c187ae6103455cd875c4f3d22 (diff)
Documentation fixes ✔
-rw-r--r--src/diag.rs7
-rw-r--r--src/eval/capture.rs2
-rw-r--r--src/eval/mod.rs12
-rw-r--r--src/eval/scope.rs13
-rw-r--r--src/exec/context.rs4
-rw-r--r--src/exec/state.rs2
6 files changed, 22 insertions, 18 deletions
diff --git a/src/diag.rs b/src/diag.rs
index d8433141..c31bffde 100644
--- a/src/diag.rs
+++ b/src/diag.rs
@@ -83,8 +83,8 @@ impl Display for Level {
/// # use typst::error;
/// # use typst::syntax::Span;
/// # let span = Span::ZERO;
-/// # let name = "";
-/// let error = error!(span, "there is an error with {}", name);
+/// # let thing = "";
+/// let error = error!(span, "there is an error with {}", thing);
/// ```
#[macro_export]
macro_rules! error {
@@ -99,8 +99,7 @@ macro_rules! error {
/// Construct a diagnostic with [`Warning`](Level::Warning) level.
///
-/// This works exactly like `error!`. See its documentation for more
-/// information.
+/// This works exactly like [`error!`].
#[macro_export]
macro_rules! warning {
($span:expr, $($tts:tt)*) => {
diff --git a/src/eval/capture.rs b/src/eval/capture.rs
index 05760594..182468f7 100644
--- a/src/eval/capture.rs
+++ b/src/eval/capture.rs
@@ -32,7 +32,7 @@ impl<'ast> Visit<'ast> for CapturesVisitor<'_> {
match node {
Expr::Ident(ident) => {
// Find out whether the identifier is not locally defined, but
- // captured, and if so, replace it with its value.
+ // captured, and if so, capture its value.
if self.internal.get(ident).is_none() {
if let Some(slot) = self.external.get(ident) {
self.captures.def_slot(ident.as_str(), Rc::clone(slot));
diff --git a/src/eval/mod.rs b/src/eval/mod.rs
index 17620161..524ef43a 100644
--- a/src/eval/mod.rs
+++ b/src/eval/mod.rs
@@ -32,9 +32,9 @@ pub fn eval(env: &mut Env, tree: &Tree, scope: &Scope) -> Pass<ExprMap> {
/// A map from expressions to the values they evaluated to.
///
-/// The raw pointers point into the expressions contained in some [tree](Tree).
+/// The raw pointers point into the expressions contained in some [`Tree`].
/// Since the lifetime is erased, the tree could go out of scope while the hash
-/// map still lives. Though this could lead to lookup panics, it is not unsafe
+/// map still lives. Although this could lead to lookup panics, it is not unsafe
/// since the pointers are never dereferenced.
pub type ExprMap = HashMap<*const Expr, Value>;
@@ -84,8 +84,8 @@ impl Eval for Tree {
}
impl<'ast> Visit<'ast> for ExprVisitor<'_, '_> {
- fn visit_expr(&mut self, item: &'ast Expr) {
- self.map.insert(item as *const _, item.eval(self.ctx));
+ fn visit_expr(&mut self, node: &'ast Expr) {
+ self.map.insert(node as *const _, node.eval(self.ctx));
}
}
@@ -443,8 +443,8 @@ impl Eval for ExprIf {
if let Value::Bool(condition) = condition {
if condition {
self.if_body.eval(ctx)
- } else if let Some(expr) = &self.else_body {
- expr.eval(ctx)
+ } else if let Some(else_body) = &self.else_body {
+ else_body.eval(ctx)
} else {
Value::None
}
diff --git a/src/eval/scope.rs b/src/eval/scope.rs
index c0926c0c..69d519fd 100644
--- a/src/eval/scope.rs
+++ b/src/eval/scope.rs
@@ -52,16 +52,21 @@ impl<'a> Scopes<'a> {
self.top = self.scopes.pop().expect("no pushed scope");
}
- /// Define a constant variable in the active scope.
+ /// Define a constant variable with a value in the active scope.
pub fn def_const(&mut self, var: impl Into<String>, value: impl Into<Value>) {
self.top.def_const(var, value);
}
- /// Define a mutable variable in the active scope.
+ /// Define a mutable variable with a value in the active scope.
pub fn def_mut(&mut self, var: impl Into<String>, value: impl Into<Value>) {
self.top.def_mut(var, value);
}
+ /// Define a variable with a slot in the active scope.
+ pub fn def_slot(&mut self, var: impl Into<String>, slot: Slot) {
+ self.top.def_slot(var, slot);
+ }
+
/// Look up the slot of a variable.
pub fn get(&self, var: &str) -> Option<&Slot> {
iter::once(&self.top)
@@ -84,7 +89,7 @@ impl Scope {
Self::default()
}
- /// Define a constant variable.
+ /// Define a constant variable with a value.
pub fn def_const(&mut self, var: impl Into<String>, value: impl Into<Value>) {
let cell = RefCell::new(value.into());
@@ -95,7 +100,7 @@ impl Scope {
self.values.insert(var.into(), Rc::new(cell));
}
- /// Define a mutable variable.
+ /// Define a mutable variable with a value.
pub fn def_mut(&mut self, var: impl Into<String>, value: impl Into<Value>) {
self.values.insert(var.into(), Rc::new(RefCell::new(value.into())));
}
diff --git a/src/exec/context.rs b/src/exec/context.rs
index 62f50880..b37b15cb 100644
--- a/src/exec/context.rs
+++ b/src/exec/context.rs
@@ -178,8 +178,8 @@ impl<'a> ExecContext<'a> {
/// Start a layouting group.
///
- /// All further calls to [`push`](Self::push) will collect nodes for this group.
- /// The given metadata will be returned alongside the collected nodes
+ /// All further calls to [`push`](Self::push) will collect nodes for this
+ /// group. The given metadata will be returned alongside the collected nodes
/// in a matching call to [`end_group`](Self::end_group).
fn start_group<T: 'static>(&mut self, meta: T) {
self.groups.push((Box::new(meta), std::mem::take(&mut self.inner)));
diff --git a/src/exec/state.rs b/src/exec/state.rs
index 756a485c..22839c54 100644
--- a/src/exec/state.rs
+++ b/src/exec/state.rs
@@ -133,7 +133,7 @@ impl FontState {
impl Default for FontState {
fn default() -> Self {
Self {
- /// The default tree of font fallbacks.
+ // The default tree of font fallbacks.
families: Rc::new(fallback! {
list: [],
classes: { "monospace" => ["inconsolata"] },