sol_lang/introspec/
project.rs1use miette::Diagnostic;
2use std::{fs, path::PathBuf};
3use thiserror::Error;
4
5pub struct Project {
8 pub index_directory: PathBuf,
9}
10
11#[derive(Error, Debug, Diagnostic)]
12#[error("Error loading project.")]
13pub enum ProjectLoadError {
14 IO(#[from] std::io::Error),
15}
16
17impl Project {
18 pub fn load_from_directory(path: PathBuf) -> Result<(), ProjectLoadError> {
19 let mut dir = fs::read_dir(path)?;
20
21 if dir.any(|entry| {
22 entry
23 .map(|entry| entry.file_name() == "index.sol")
24 .unwrap_or(false)
25 }) {
26 println!("Some index.sol");
27 } else {
28 println!("No index.sol");
29 }
30
31 Ok(())
32 }
33}
34
35pub struct File {
36 uri: String,
37}