Skip to content

Commit de1d195

Browse files
committed
chore: fix formatting
1 parent d54efa7 commit de1d195

6 files changed

Lines changed: 205 additions & 156 deletions

File tree

litehtml-sys/build.rs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -162,8 +162,9 @@ fn build_system(out_dir: &PathBuf, csrc_dir: &PathBuf) {
162162
(dir.join("include"), dir.join("lib"))
163163
} else {
164164
// Search LIBRARY_PATH / C_INCLUDE_PATH (set by GUIX, Nix, etc.)
165-
let include_dir = find_header("litehtml.h")
166-
.expect("Cannot find litehtml headers. Set LITEHTML_DIR or enable the `vendored` feature.");
165+
let include_dir = find_header("litehtml.h").expect(
166+
"Cannot find litehtml headers. Set LITEHTML_DIR or enable the `vendored` feature.",
167+
);
167168
let lib_dir = find_library("liblitehtml.a")
168169
.expect("Cannot find liblitehtml. Set LITEHTML_DIR or enable the `vendored` feature.");
169170
(include_dir, lib_dir)
@@ -237,7 +238,12 @@ fn find_library(name: &str) -> Option<PathBuf> {
237238
None
238239
}
239240

240-
fn generate_bindings(csrc_dir: &PathBuf, out_dir: &PathBuf, vendored: bool, manifest_dir: &PathBuf) {
241+
fn generate_bindings(
242+
csrc_dir: &PathBuf,
243+
out_dir: &PathBuf,
244+
vendored: bool,
245+
manifest_dir: &PathBuf,
246+
) {
241247
let mut builder = bindgen::Builder::default()
242248
.header(csrc_dir.join("litehtml_c.h").to_str().unwrap())
243249
.allowlist_function("lh_.*")

litehtml-sys/src/lib.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1-
#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, dead_code)]
1+
#![allow(
2+
non_upper_case_globals,
3+
non_camel_case_types,
4+
non_snake_case,
5+
dead_code
6+
)]
27

38
include!(concat!(env!("OUT_DIR"), "/bindings.rs"));
49

litehtml/examples/render.rs

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,17 @@ fn main() {
3939
container.resize(width, content_height);
4040
if let Some(mut doc) = Document::from_html(&html, &mut container, None, None) {
4141
doc.render(width as f32);
42-
doc.draw(0, 0.0, 0.0, Some(Position {
43-
x: 0.0,
44-
y: 0.0,
45-
width: width as f32,
46-
height: content_height as f32,
47-
}));
42+
doc.draw(
43+
0,
44+
0.0,
45+
0.0,
46+
Some(Position {
47+
x: 0.0,
48+
y: 0.0,
49+
width: width as f32,
50+
height: content_height as f32,
51+
}),
52+
);
4853
}
4954

5055
// Convert RGBA to minifb's 0xRRGGBB u32 format, blended against white
@@ -109,9 +114,13 @@ fn main() {
109114
if visible.len() < (win_height as usize * width as usize) {
110115
let mut padded = visible.to_vec();
111116
padded.resize(win_height as usize * width as usize, 0x00FFFFFF);
112-
window.update_with_buffer(&padded, width as usize, win_height as usize).unwrap();
117+
window
118+
.update_with_buffer(&padded, width as usize, win_height as usize)
119+
.unwrap();
113120
} else {
114-
window.update_with_buffer(visible, width as usize, win_height as usize).unwrap();
121+
window
122+
.update_with_buffer(visible, width as usize, win_height as usize)
123+
.unwrap();
115124
}
116125
}
117126
}

litehtml/src/email.rs

Lines changed: 58 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,9 @@ fn detect_meta_charset(html: &str) -> Option<&'static Encoding> {
9595
(&inner[..end], &inner[end..])
9696
} else {
9797
let end = rest
98-
.find(|c: char| c.is_ascii_whitespace() || c == '"' || c == '\'' || c == ';' || c == '>')
98+
.find(|c: char| {
99+
c.is_ascii_whitespace() || c == '"' || c == '\'' || c == ';' || c == '>'
100+
})
99101
.unwrap_or(rest.len());
100102
(&rest[..end], &rest[end..])
101103
};
@@ -266,10 +268,7 @@ fn is_stylesheet_link(tag_content: &str) -> bool {
266268
false
267269
}
268270

269-
fn advance_past(
270-
chars: &mut std::iter::Peekable<std::str::CharIndices<'_>>,
271-
target: usize,
272-
) {
271+
fn advance_past(chars: &mut std::iter::Peekable<std::str::CharIndices<'_>>, target: usize) {
273272
while let Some(&(j, _)) = chars.peek() {
274273
if j >= target {
275274
break;
@@ -305,7 +304,10 @@ fn skip_until_close_tag(
305304
}
306305
} else if rest.starts_with(&open_pattern) {
307306
let after = &rest[open_pattern.len()..];
308-
if after.starts_with('>') || after.starts_with(char::is_whitespace) || after.starts_with('/') {
307+
if after.starts_with('>')
308+
|| after.starts_with(char::is_whitespace)
309+
|| after.starts_with('/')
310+
{
309311
depth += 1;
310312
}
311313
}
@@ -332,7 +334,8 @@ fn strip_event_handlers(tag: &str) -> String {
332334
j += 1;
333335
}
334336
// Skip tag name
335-
while j < bytes.len() && !bytes[j].is_ascii_whitespace() && bytes[j] != b'>' && bytes[j] != b'/' {
337+
while j < bytes.len() && !bytes[j].is_ascii_whitespace() && bytes[j] != b'>' && bytes[j] != b'/'
338+
{
336339
j += 1;
337340
}
338341

@@ -353,7 +356,12 @@ fn strip_event_handlers(tag: &str) -> String {
353356

354357
// Read attribute name
355358
let attr_start = i;
356-
while i < bytes.len() && bytes[i] != b'=' && !bytes[i].is_ascii_whitespace() && bytes[i] != b'>' && bytes[i] != b'/' {
359+
while i < bytes.len()
360+
&& bytes[i] != b'='
361+
&& !bytes[i].is_ascii_whitespace()
362+
&& bytes[i] != b'>'
363+
&& bytes[i] != b'/'
364+
{
357365
i += 1;
358366
}
359367
let attr_name = &tag[attr_start..i];
@@ -393,7 +401,10 @@ fn strip_event_handlers(tag: &str) -> String {
393401
}
394402
} else {
395403
// Unquoted value
396-
while temp < bytes.len() && !bytes[temp].is_ascii_whitespace() && bytes[temp] != b'>' {
404+
while temp < bytes.len()
405+
&& !bytes[temp].is_ascii_whitespace()
406+
&& bytes[temp] != b'>'
407+
{
397408
temp += 1;
398409
}
399410
}
@@ -453,10 +464,7 @@ fn percent_decode(input: &str) -> Vec<u8> {
453464
let mut i = 0;
454465
while i < bytes.len() {
455466
if bytes[i] == b'%' && i + 2 < bytes.len() {
456-
if let (Some(hi), Some(lo)) = (
457-
hex_val(bytes[i + 1]),
458-
hex_val(bytes[i + 2]),
459-
) {
467+
if let (Some(hi), Some(lo)) = (hex_val(bytes[i + 1]), hex_val(bytes[i + 2])) {
460468
result.push(hi << 4 | lo);
461469
i += 3;
462470
continue;
@@ -547,13 +555,23 @@ fn preprocess_body_bgcolor(html: &str) -> String {
547555
let (value, attr_end_offset) = if rest.starts_with('"') {
548556
let inner = &rest[1..];
549557
let end = inner.find('"').unwrap_or(inner.len());
550-
(&tag[bg_pos + 7 + (tag_lower.len() - bg_pos - 7 - rest.len()) + 1..bg_pos + 7 + (tag_lower.len() - bg_pos - 7 - rest.len()) + 1 + end], end + 2)
558+
(
559+
&tag[bg_pos + 7 + (tag_lower.len() - bg_pos - 7 - rest.len()) + 1
560+
..bg_pos + 7 + (tag_lower.len() - bg_pos - 7 - rest.len()) + 1 + end],
561+
end + 2,
562+
)
551563
} else if rest.starts_with('\'') {
552564
let inner = &rest[1..];
553565
let end = inner.find('\'').unwrap_or(inner.len());
554-
(&tag[bg_pos + 7 + (tag_lower.len() - bg_pos - 7 - rest.len()) + 1..bg_pos + 7 + (tag_lower.len() - bg_pos - 7 - rest.len()) + 1 + end], end + 2)
566+
(
567+
&tag[bg_pos + 7 + (tag_lower.len() - bg_pos - 7 - rest.len()) + 1
568+
..bg_pos + 7 + (tag_lower.len() - bg_pos - 7 - rest.len()) + 1 + end],
569+
end + 2,
570+
)
555571
} else {
556-
let end = rest.find(|c: char| c.is_ascii_whitespace() || c == '>').unwrap_or(rest.len());
572+
let end = rest
573+
.find(|c: char| c.is_ascii_whitespace() || c == '>')
574+
.unwrap_or(rest.len());
557575
let offset = tag_lower.len() - bg_pos - 7 - rest.len();
558576
(&tag[bg_pos + 7 + offset..bg_pos + 7 + offset + end], end)
559577
};
@@ -660,15 +678,28 @@ fn preprocess_cellpadding(html: &str) -> String {
660678
let (value, _val_len) = if rest.starts_with('"') {
661679
let inner = &rest[1..];
662680
let end = inner.find('"').unwrap_or(inner.len());
663-
(&html[abs_pos + 11 + (lower.len() - abs_pos - 11 - rest.len()) + 1..abs_pos + 11 + (lower.len() - abs_pos - 11 - rest.len()) + 1 + end], end + 2)
681+
(
682+
&html[abs_pos + 11 + (lower.len() - abs_pos - 11 - rest.len()) + 1
683+
..abs_pos + 11 + (lower.len() - abs_pos - 11 - rest.len()) + 1 + end],
684+
end + 2,
685+
)
664686
} else if rest.starts_with('\'') {
665687
let inner = &rest[1..];
666688
let end = inner.find('\'').unwrap_or(inner.len());
667-
(&html[abs_pos + 11 + (lower.len() - abs_pos - 11 - rest.len()) + 1..abs_pos + 11 + (lower.len() - abs_pos - 11 - rest.len()) + 1 + end], end + 2)
689+
(
690+
&html[abs_pos + 11 + (lower.len() - abs_pos - 11 - rest.len()) + 1
691+
..abs_pos + 11 + (lower.len() - abs_pos - 11 - rest.len()) + 1 + end],
692+
end + 2,
693+
)
668694
} else {
669-
let end = rest.find(|c: char| c.is_ascii_whitespace() || c == '>').unwrap_or(rest.len());
695+
let end = rest
696+
.find(|c: char| c.is_ascii_whitespace() || c == '>')
697+
.unwrap_or(rest.len());
670698
let offset = lower.len() - abs_pos - 11 - rest.len();
671-
(&html[abs_pos + 11 + offset..abs_pos + 11 + offset + end], end)
699+
(
700+
&html[abs_pos + 11 + offset..abs_pos + 11 + offset + end],
701+
end,
702+
)
672703
};
673704

674705
let padding = value.trim();
@@ -705,7 +736,8 @@ fn preprocess_cellpadding(html: &str) -> String {
705736
}
706737
attr_end += 1;
707738
} else {
708-
while attr_end < tb.len() && !tb[attr_end].is_ascii_whitespace() && tb[attr_end] != b'>' {
739+
while attr_end < tb.len() && !tb[attr_end].is_ascii_whitespace() && tb[attr_end] != b'>'
740+
{
709741
attr_end += 1;
710742
}
711743
}
@@ -914,7 +946,8 @@ mod tests {
914946

915947
#[test]
916948
fn sanitize_strips_form_elements() {
917-
let html = "<form action=\"/submit\"><input type=\"text\"><button>Go</button></form><p>After</p>";
949+
let html =
950+
"<form action=\"/submit\"><input type=\"text\"><button>Go</button></form><p>After</p>";
918951
let result = sanitize_html(html);
919952
assert!(!result.contains("form"));
920953
assert!(!result.contains("input"));
@@ -1060,7 +1093,9 @@ mod tests {
10601093
#[test]
10611094
fn prepare_email_with_encoding() {
10621095
// Windows-1252 encoded with meta charset
1063-
let html = b"<html><head><meta charset=\"windows-1252\"></head><body>\x93Hello\x94</body></html>".to_vec();
1096+
let html =
1097+
b"<html><head><meta charset=\"windows-1252\"></head><body>\x93Hello\x94</body></html>"
1098+
.to_vec();
10641099
let prepared = prepare_email_html(&html, None, None);
10651100
assert!(prepared.html.contains('\u{201c}'));
10661101
assert!(prepared.html.contains('\u{201d}'));

0 commit comments

Comments
 (0)