Don't use nightly rust
This commit is contained in:
parent
632fa4aa73
commit
d5d10a4818
@ -1,6 +1,6 @@
|
||||
use std::{
|
||||
cell::RefCell,
|
||||
fs::{File, ReadDir},
|
||||
fs::{DirEntry, File, ReadDir},
|
||||
path::PathBuf,
|
||||
rc::Rc,
|
||||
};
|
||||
@ -107,10 +107,7 @@ impl Iterator for ReadFilesRecursive {
|
||||
} else {
|
||||
match self.read_dir.next() {
|
||||
Some(Ok(ent)) => {
|
||||
if let Ok(ft) = ent.file_type()
|
||||
&& ft.is_dir()
|
||||
&& let Ok(recurse) = read_files_recursive(ent.path())
|
||||
{
|
||||
if let Some(recurse) = read_files_recursive_ent(&ent) {
|
||||
self.recurse = Some(Box::new(recurse));
|
||||
self.next()
|
||||
} else {
|
||||
@ -123,6 +120,16 @@ impl Iterator for ReadFilesRecursive {
|
||||
}
|
||||
}
|
||||
|
||||
fn read_files_recursive_ent(ent: &DirEntry) -> Option<ReadFilesRecursive> {
|
||||
let Ok(ft) = ent.file_type() else {
|
||||
return None;
|
||||
};
|
||||
if !ft.is_dir() {
|
||||
return None;
|
||||
}
|
||||
read_files_recursive(ent.path()).ok()
|
||||
}
|
||||
|
||||
fn read_files_recursive(path: PathBuf) -> std::io::Result<ReadFilesRecursive> {
|
||||
std::fs::read_dir(path).map(|read_dir| ReadFilesRecursive {
|
||||
read_dir,
|
||||
|
@ -123,13 +123,16 @@ impl Rule for PostsByTag {
|
||||
.inputs
|
||||
.iter()
|
||||
.flat_map(|post_input| {
|
||||
if let Some(post) = post_input.value().as_ref()
|
||||
&& post
|
||||
.metadata
|
||||
.tags
|
||||
.iter()
|
||||
.flatten()
|
||||
.any(|t| t.slug == self.tag.slug)
|
||||
let post = post_input.value();
|
||||
let Some(post) = post.as_ref() else {
|
||||
return None;
|
||||
};
|
||||
if post
|
||||
.metadata
|
||||
.tags
|
||||
.iter()
|
||||
.flatten()
|
||||
.any(|t| t.slug == self.tag.slug)
|
||||
{
|
||||
Some(Entry {
|
||||
permalink: post.permalink(),
|
||||
|
@ -42,7 +42,8 @@ impl<I: Iterator<Item = char>> Iterator for Slugify<I> {
|
||||
// if we're about to start lowercasing something, and the previous
|
||||
// (untransformed) char was lowercase (i.e., at a transition from lower ->
|
||||
// upper case), emit a substitution
|
||||
if let Action::Lowercase = action && let Some(prev_char) = prev_char && prev_char.is_lowercase() {
|
||||
if action == Action::Lowercase && prev_char.map_or(false, |c| c.is_lowercase())
|
||||
{
|
||||
self.state = State::Lowercase(c.to_lowercase());
|
||||
Some(self.substitution)
|
||||
} else {
|
||||
|
@ -1,5 +1,3 @@
|
||||
#![feature(let_chains)]
|
||||
|
||||
mod generator;
|
||||
mod live_reload;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user