- Notifications
You must be signed in to change notification settings - Fork33
Examples from tutorial and other documentations of Rust.
License
eliovir/rust-examples
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Rust-examples is a repository togather example codes from tutorial and other documentations ofRust into files, ready to compile.
Examples are tested with version 1.64.0 and 1.68.0-nightly.
- Homepage
what_it_looks_like.rs
,what_it_looks_like2.rs
,what_it_looks_like3.rs
- Old Tutorial, deprecated in favor of theBook
- 2.1 Compiling your first program:
tutorial-02_1-hello.rs
- 3 Syntax basics:
tutorial-03-syntax_basics.rs
- 4.2 Pattern matching:
tutorial-04_2-pattern-matching.rs
- 4.3 Loops (
for
,while
,loop
):tutorial-04_3-loops.rs
- 5.1 Structs:
tutorial-05_1-structs.rs
- 5.2 Enums:
tutorial-05_2-enum.rs
- 5.3 Tuples:
tutorial-05_3-tuples.rs
- 15 Closures:
tutorial-15-closure.rs
- 16 Methods, withconstructor:
tutorial-16-methods.rs
- 17 Generics:
tutorial-17-generics.rs
- 2.1 Compiling your first program:
- Old Rust Threads and Communication Guide, moved into theRust Programming Language book
- 2.1 Communication:
tutorial-tasks-02_1-communication.rs
- 2.3 Sharing immutable data without copy: Arc:
tutorial-tasks-02_3-arc.rs
- 2.1 Communication:
- Book
- 5.6 Concurrency, threads:
book-5-6-threads.rs
- 5.6 Concurrency, threads:
- Doc unit testing, moved into theRust Programming Language book.
- Unit testing in Rust:
unittests.rs
- Unit testing in Rust:
- Old Rust Cheatsheet
- Use Struct to express phantom types:
phantom_type.rs
- Use Struct to express phantom types:
- API
- Program to an 'interface', not an 'implementation', byJosh Davis:
lang-interface.rs
- Lambda expressions:
lang-lambda.rs
- Generics, Polymorphism, byFelix S. Klock II:
lang-generics.rs
- Overloading byRust By Example:
lang-overloading.rs
- Pointer snippets from Dave Herman's talk:
lang-pointers.rs
- Question mark operator introduced inRust-1.13:
lang-question_mark.rs
- std::collections:HashMap:
api-collections-hashmap.rs
- getopts:
api-getopts.rs
- rand:
api-rand.rs
- std::FromStr:
api-std-from_str.rs
- std::fs::File:
api-std-fs-file.rs
- std::vec: OwnedVector, 2D-arrays, ...:
api-std-vec.rs
- Program to an 'interface', not an 'implementation', byJosh Davis:
- Some new files:
Makefile
to compile, run tests and run benchmarks.travis.yml
to add the repository toTravis CI andRust CI- A library and its unit tests and benchmarks for 2 Fibonacci functions (a reccursive and a non reccursive):
fibonacci.rs
- A struct to manage dates:
date.rs
- Different syntaxes to find the maximum value in a vector:
find_max.rs
- A struct to manage INI files:
inifile.rs
- A script to print TBX entries from CSV terminology:
datumbazo2tbx.rs
- Design pattern Decorator:
design_pattern-decorator.rs
anddesign_pattern-decorator2.rs
- Design pattern Strategy:
design_pattern-strategy.rs
- Design pattern Observer:
design_pattern-observer.rs
- Design pattern Command:
design_pattern-command.rs
- Design pattern State:
design_pattern-state.rs
- Design pattern Template method:
design_pattern-templatemethod.rs
- Design pattern Chain of Command:
design_pattern-chain_of_command.rs
- Design pattern Visitor:
design_pattern-visitor.rs
- Finite state machine:
finite-state-machine.rs
You will need the version 1.64.0 of the rust compiler.If you encounter problems, make sure you have the right version before creating an issue.
The simplest way to buildrust-examples is to do a clone and usemake
to compile:
git clone https://github.com/eliovir/rust-examplescd rust-examplesmake
To run tests and benchmarks (benchmarks need Nightly):
make testsmake bench
To get help on commands:
make help
- Fork it (
git clone https://github.com/eliovir/rust-examples
) - Create your feature branch (
git checkout -b my-new-feature
) - Make your changes, and add tests for them
- Test your changes (
make test
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
other projects have similar goals: providing Rust code snippets:
- Learn Rust: Sample programs Kaseyc made to learn the Rust language.
- Rust design patterns: Implementation of various design patterns in Rust. (MIT license)
- Rust for real: Learning Rust by example. (Apache License v2)
- Rust Rosetta: ImplementingRosetta Code problems in Rust. (Public domain)
- Rust sandbox: Playing around with Rust. (DWTFYWT PUBLIC LICENSE v2)
- Rustlings: Smadheagle's experiments with Rust Programming Language.
- Rust projects: Some programs am0d has written as he set about learning rust. (AS-IS)
- Rust by example: Learn Rust with practical examples (website). (Apache License v2 and MIT license)
Rust is primarily distributed under the terms of both the MIT licenseand the Apache License (Version 2.0), with portions covered by variousBSD-like licenses.
These codes are distributed under the MIT license.
See LICENSE for details.
About
Examples from tutorial and other documentations of Rust.