Ik heb gespeeld met Rust op een pet project en toen ik wilde naamruimte mijn code kwam ik vast voor een tijdje proberen om erachter te komen hoe het te doen. Afkomstig van Java en Ruby achtergrond Ik verwacht iets als pakketten in Java of modules in Ruby, maar het was niet het geval in Rust. De documentatie helpt mij ook niet. Het duurde even voor ik erachter kwam hoe het werkt. Dus hier is mijn begrip van Rust modules met eenvoudige voorbeelden (Github)
Rust vereist gebruikers om een expliciete module grafiek
sleutel is elke module moet worden gedeclareerd in root-bestand(main.rs in dit voorbeeld). Als u submodules dan die moeten worden gedeclareerd op mod.rs bestand van de oudermodule.
Wat is mod.rs ?
u kunt de module op twee manieren aanmaken: een enkel bestand of een bestand in een map. Als je gaat met latere aanpak Rust verwacht dat de map te hebben mod.rs bestand (Bestandshiërarchie) die u later in een voorbeeld zult zien.
aangezien ik op zoek was naar voorbeelden van deze 3 use cases dacht ik dat ik voor dezelfde
- enkele module
- submodules
- geneste modules
enkele Module
kon toevoegen als u een module in een enkel bestand wilt hebben, dan is het vrij eenvoudig.
single_module.rs
main.rs
merk op dat single_module is gedeclareerd in main.rs in tegenstelling tot sommige andere talen waar we ze importeren.
Output:
Im in single module