Giter Club home page Giter Club logo

memfs's People

Contributors

kolektiv avatar

Watchers

 avatar

memfs's Issues

Alternative API surface

Consider an alternative API surface which unifies all of the get/find/create options in to a single function which takes arguments expressing what to do in terms of intermediate and endpoint creation during path traversal. This could replace all of the get, get_path, etc. options plus any creation options.

Data Access

We need ways to read and write the data attached to each node. Implement this.

Move methods

Whether this is identical to renaming, or otherwise, I'm not entirely sure yet - needs a little think about the API surface, but broadly speaking, being able to move a thing somewhere else is needed!

Proper Path Traversal

At the moment, paths passed to functions are treated extremely naively (no support for root dirs, parent/child traversal, etc.)

This should be improved, and we probably want to pull some of that code outside of the directory methods themselves, especially as we're likely to want to include some default file system traversal functions too.

Documentation

Crate documentation needs to be done, this is a tracking issue for that. Not going to invest time in that until the API is reasonably stable and complete and it's ready for a publish for a working version to crates.io. Also needs battle testing as part of internal projects first!

API Naming Conventions

We need a consistent approach to naming for API calls, we have more available and more
contextual available than simply mirroring the std::fs API, which is really a thin layer
on a *nix-like file system.

Something like...

Info

count
count_dir
count_file

Retrieval

get
get_dir
get_file

get_path
get_path_dir
get_path_file

Creation

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.