// Copyright 2015-2018 Parity Technologies (UK) Ltd. // This file is part of Parity. // Parity is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // Parity is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // You should have received a copy of the GNU General Public License // along with Parity. If not, see . extern crate quasi; mod codegen; mod build; pub mod js; pub use build::inner::generate; use std::default::Default; #[derive(Clone)] pub struct File { pub path: &'static str, pub content: &'static [u8], // TODO: use strongly-typed MIME. pub content_type: &'static str, } #[derive(Clone, Debug)] pub struct Info { pub name: &'static str, pub version: &'static str, pub author: &'static str, pub description: &'static str, pub icon_url: &'static str, } pub trait WebApp : Default + Send + Sync { fn file(&self, path: &str) -> Option<&File>; fn info(&self) -> Info; }