summaryrefslogtreecommitdiff
path: root/support/texlab/src/distro
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-06-13 03:03:42 +0000
committerNorbert Preining <norbert@preining.info>2022-06-13 03:03:42 +0000
commitef6d63ded56fb892decaa8ab41d7deebbe670473 (patch)
tree9c8eccf2e633fcfe0ad512e5428222ce0707971e /support/texlab/src/distro
parent86d0c4c6729cfb43e13fb29790810c3cc2521806 (diff)
CTAN sync 202206130303
Diffstat (limited to 'support/texlab/src/distro')
-rw-r--r--support/texlab/src/distro/kpsewhich.rs1
-rw-r--r--support/texlab/src/distro/miktex.rs14
-rw-r--r--support/texlab/src/distro/texlive.rs9
3 files changed, 13 insertions, 11 deletions
diff --git a/support/texlab/src/distro/kpsewhich.rs b/support/texlab/src/distro/kpsewhich.rs
index ad2ac9eaf2..b14e64bf56 100644
--- a/support/texlab/src/distro/kpsewhich.rs
+++ b/support/texlab/src/distro/kpsewhich.rs
@@ -18,6 +18,7 @@ pub struct Resolver {
}
impl Resolver {
+ #[must_use]
pub fn new(files_by_name: FxHashMap<SmolStr, PathBuf>) -> Self {
Self { files_by_name }
}
diff --git a/support/texlab/src/distro/miktex.rs b/support/texlab/src/distro/miktex.rs
index 563c8445e3..c7a92d572e 100644
--- a/support/texlab/src/distro/miktex.rs
+++ b/support/texlab/src/distro/miktex.rs
@@ -18,10 +18,10 @@ pub fn load_resolver() -> Result<Resolver> {
const DATABASE_PATH: &str = "miktex/data/le";
const FNDB_SIGNATURE: u32 = 0x42_44_4e_46;
-const FNDB_WORD_SIZE: usize = 4;
-const FNDB_TABLE_POINTER_OFFSET: usize = 4 * FNDB_WORD_SIZE;
-const FNDB_TABLE_SIZE_OFFSET: usize = 6 * FNDB_WORD_SIZE;
-const FNDB_ENTRY_SIZE: usize = 4 * FNDB_WORD_SIZE;
+const FNDB_WORD_SIZE: u32 = 4;
+const FNDB_TABLE_POINTER_OFFSET: u32 = 4 * FNDB_WORD_SIZE;
+const FNDB_TABLE_SIZE_OFFSET: u32 = 6 * FNDB_WORD_SIZE;
+const FNDB_ENTRY_SIZE: u32 = 4 * FNDB_WORD_SIZE;
fn read_database(directory: &Path) -> Result<Vec<PathBuf>> {
let database_directory = directory.join(DATABASE_PATH);
@@ -45,16 +45,16 @@ fn parse_database(bytes: &[u8]) -> io::Result<Vec<PathBuf>> {
return Err(io::ErrorKind::InvalidData.into());
}
- reader.set_position(FNDB_TABLE_POINTER_OFFSET as u64);
+ reader.set_position(u64::from(FNDB_TABLE_POINTER_OFFSET));
let table_address = reader.read_u32::<LittleEndian>()?;
- reader.set_position(FNDB_TABLE_SIZE_OFFSET as u64);
+ reader.set_position(u64::from(FNDB_TABLE_SIZE_OFFSET));
let table_size = reader.read_u32::<LittleEndian>()?;
let mut files = Vec::new();
for i in 0..table_size {
let offset = table_address + i * FNDB_ENTRY_SIZE as u32;
- reader.set_position(offset as u64);
+ reader.set_position(u64::from(offset));
let file_name_offset = reader.read_u32::<LittleEndian>()? as usize;
let directory_offset = reader.read_u32::<LittleEndian>()? as usize;
let file_name = read_string(bytes, file_name_offset)?;
diff --git a/support/texlab/src/distro/texlive.rs b/support/texlab/src/distro/texlive.rs
index 27f55569a7..47159b2efc 100644
--- a/support/texlab/src/distro/texlive.rs
+++ b/support/texlab/src/distro/texlive.rs
@@ -1,5 +1,5 @@
use std::{
- fs, io,
+ fs,
path::{Path, PathBuf},
str::Lines,
};
@@ -23,11 +23,11 @@ fn read_database(directory: &Path) -> Result<Vec<PathBuf>> {
}
let text = fs::read_to_string(file)?;
- let files = parse_database(text.lines())?;
+ let files = parse_database(text.lines());
Ok(files)
}
-fn parse_database(lines: Lines) -> io::Result<Vec<PathBuf>> {
+fn parse_database(lines: Lines) -> Vec<PathBuf> {
let mut paths = Vec::new();
let mut directory = "";
@@ -39,5 +39,6 @@ fn parse_database(lines: Lines) -> io::Result<Vec<PathBuf>> {
paths.push(path);
}
}
- Ok(paths)
+
+ paths
}