Move unparse utility methods onto Generator (#4497)

This commit is contained in:
Charlie Marsh 2023-05-18 11:00:46 -04:00 committed by GitHub
parent d3b18345c5
commit e9c6f16c56
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
40 changed files with 137 additions and 157 deletions

View file

@ -17,27 +17,9 @@ use smallvec::SmallVec;
use crate::call_path::CallPath;
use crate::newlines::UniversalNewlineIterator;
use crate::source_code::{Generator, Indexer, Locator};
use crate::source_code::{Indexer, Locator};
use crate::statement_visitor::{walk_body, walk_stmt, StatementVisitor};
/// Generate source code from an [`Expr`].
pub fn unparse_expr(expr: &Expr, mut generator: Generator) -> String {
generator.unparse_expr(expr, 0);
generator.generate()
}
/// Generate source code from a [`Stmt`].
pub fn unparse_stmt(stmt: &Stmt, mut generator: Generator) -> String {
generator.unparse_stmt(stmt);
generator.generate()
}
/// Generate source code from an [`Constant`].
pub fn unparse_constant(constant: &Constant, mut generator: Generator) -> String {
generator.unparse_constant(constant);
generator.generate()
}
fn is_iterable_initializer<F>(id: &str, is_builtin: F) -> bool
where
F: Fn(&str) -> bool,