neon_arch commited on
Commit
4a505fb
1 Parent(s): 137c62e

add missing documentation in config.lua and application source code

Browse files
src/config_parser/mod.rs CHANGED
@@ -1 +1,2 @@
1
  pub mod parser;
 
 
1
  pub mod parser;
2
+ pub mod parser_models;
src/config_parser/parser.rs CHANGED
@@ -1,22 +1,10 @@
1
  //! This module provides the functionality to parse the lua config and convert the config options
2
  //! into rust readable form.
3
 
 
4
  use rlua::Lua;
5
- use serde::Serialize;
6
  use std::fs;
7
 
8
- #[derive(Serialize, Clone)]
9
- pub struct Style {
10
- pub theme: String,
11
- pub colorscheme: String,
12
- }
13
-
14
- impl Style {
15
- pub fn new(theme: String, colorscheme: String) -> Self {
16
- Style { theme, colorscheme }
17
- }
18
- }
19
-
20
  /// A named struct which stores the parsed config file options.
21
  ///
22
  /// # Fields
 
1
  //! This module provides the functionality to parse the lua config and convert the config options
2
  //! into rust readable form.
3
 
4
+ use super::parser_models::Style;
5
  use rlua::Lua;
 
6
  use std::fs;
7
 
 
 
 
 
 
 
 
 
 
 
 
 
8
  /// A named struct which stores the parsed config file options.
9
  ///
10
  /// # Fields
src/config_parser/parser_models.rs ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ //! This module provides public models for handling, storing and serializing parsed config file
2
+ //! options from config.lua by grouping them togather.
3
+
4
+ use serde::Serialize;
5
+
6
+ /// A named struct which stores, serializes and groups the parsed config file options of theme and
7
+ /// colorscheme names into the Style struct which derives the `Clone` and `Serialize` traits
8
+ /// where the `Clone` trait is derived for allowing the struct to be cloned and passed to the
9
+ /// server as a shared data between all routes except `/robots.txt` and the `Serialize` trait
10
+ /// has been derived for allowing the object to be serialized so that it can be passed to
11
+ /// handlebars template files.
12
+ ///
13
+ /// # Fields
14
+ //
15
+ /// * `theme` - It stores the parsed theme option used to set a theme for the website.
16
+ /// * `colorscheme` - It stores the parsed colorscheme option used to set a colorscheme for the
17
+ /// theme being used.
18
+ #[derive(Serialize, Clone)]
19
+ pub struct Style {
20
+ pub theme: String,
21
+ pub colorscheme: String,
22
+ }
23
+
24
+ impl Style {
25
+ /// Constructs a new `Style` with the given arguments needed for the struct.
26
+ ///
27
+ /// # Arguments
28
+ ///
29
+ /// * `theme` - It takes the parsed theme option used to set a theme for the website.
30
+ /// * `colorscheme` - It takes the parsed colorscheme option used to set a colorscheme
31
+ /// for the theme being used.
32
+ pub fn new(theme: String, colorscheme: String) -> Self {
33
+ Style { theme, colorscheme }
34
+ }
35
+ }
src/lib.rs CHANGED
@@ -32,7 +32,7 @@ use handlebars::Handlebars;
32
  /// use websurfx::run;
33
  ///
34
  /// let listener = TcpListener::bind("127.0.0.1:8080").expect("Failed to bind address");
35
- /// let server = run(listener).expect("Failed to start server");
36
  /// ```
37
  pub fn run(listener: TcpListener, config: Config) -> std::io::Result<Server> {
38
  let mut handlebars: Handlebars = Handlebars::new();
 
32
  /// use websurfx::run;
33
  ///
34
  /// let listener = TcpListener::bind("127.0.0.1:8080").expect("Failed to bind address");
35
+ /// let server = run(listener,config).expect("Failed to start server");
36
  /// ```
37
  pub fn run(listener: TcpListener, config: Config) -> std::io::Result<Server> {
38
  let mut handlebars: Handlebars = Handlebars::new();
src/search_results_handler/aggregation_models.rs CHANGED
@@ -106,6 +106,11 @@ impl RawSearchResult {
106
  self.engine.push(engine)
107
  }
108
 
 
 
 
 
 
109
  pub fn engine(self) -> String {
110
  self.engine.get(0).unwrap().to_string()
111
  }
 
106
  self.engine.push(engine)
107
  }
108
 
109
+ /// A function which returns the engine name stored from the struct as a string.
110
+ ///
111
+ /// # Returns
112
+ ///
113
+ /// An engine name stored as a string from the struct.
114
  pub fn engine(self) -> String {
115
  self.engine.get(0).unwrap().to_string()
116
  }
websurfx/config.lua CHANGED
@@ -1,4 +1,7 @@
1
- port = "8080"
2
- binding_ip_addr = "127.0.0.1"
3
- colorscheme = "catppuccin-mocha"
4
- theme = "simple"
 
 
 
 
1
+ -- Server
2
+ port = "8080" -- port on which server should be launched
3
+ binding_ip_addr = "127.0.0.1" --ip address on the which server should be launched.
4
+
5
+ -- Website
6
+ colorscheme = "catppuccin-mocha" -- the colorscheme name which should be used for the website theme
7
+ theme = "simple" -- the theme name which should be used for the website