1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//! A simple utility to serve you files on a `platter`
//!
//! `platter` works on both desktop and web, and returns a byte buffer of the file's contents.
//! On desktop, `load_file` is backed by native file system APIs. On web, it is backed by an
//! HTTP 'GET' request.
//!
//! To use `platter` on the web, you'll need to choose either the `stdweb` or `web-sys` feature and
//! enable it. This determines which method of binding to browser APIs `platter` will use.
use ;
/// Create a Future that loads a file into an owned Vec of bytes
///
/// It exists for loading files from the server with Javascript on the web, and providing a unified
/// API between desktop and the web when it comes to file loading.
///
/// On desktop, the file will be loaded from disk relative to the current directory, and the Future
/// will return instantly. On the web, a GET request will be made to the stringified version of the
/// `path` and the Future will return when the HTTP request resolves.
// Select which platform implementation to use based on provided features