gitextract_qeqog3z0/ ├── .circleci/ │ └── config.yml ├── .gitignore ├── LICENSE ├── README.md ├── RELEASES.md ├── ch02/ │ ├── ex02/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── examples/ │ │ │ └── println.rs │ │ └── tests/ │ │ └── integration_tests.rs │ ├── examples/ │ │ └── README.md │ ├── hello/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ └── main.rs │ │ └── tests/ │ │ └── integration_tests.rs │ └── rpn/ │ ├── .gitignore │ ├── Cargo.toml │ ├── src/ │ │ └── main.rs │ └── tests/ │ └── integration_tests.rs ├── ch03/ │ └── bitonic-sorter/ │ ├── .gitignore │ ├── Cargo.toml │ ├── examples/ │ │ └── benchmark.rs │ ├── py-src/ │ │ ├── .gitignore │ │ └── bitonic_sorter.py │ ├── src/ │ │ ├── first.rs │ │ ├── fourth.rs │ │ ├── lib.rs │ │ ├── second.rs │ │ ├── third.rs │ │ └── utils.rs │ └── tests/ │ └── integration_tests.rs ├── ch04/ │ └── ex04/ │ ├── .gitignore │ ├── Cargo.toml │ ├── examples/ │ │ ├── ch04_01_unit.rs │ │ ├── ch04_02_bool.rs │ │ ├── ch04_03_integer.rs │ │ ├── ch04_04_overflowed1.rs │ │ ├── ch04_05_overflowed2.rs │ │ ├── ch04_06_float.rs │ │ ├── ch04_07_char.rs │ │ ├── ch04_08_reference1.rs │ │ ├── ch04_09_reference2.rs │ │ ├── ch04_10_raw_pointer.rs │ │ ├── ch04_11_fn_pointer.rs │ │ ├── ch04_12_fn_pointer_vs_closure.rs │ │ ├── ch04_13_tuple.rs │ │ ├── ch04_14_array.rs │ │ ├── ch04_15_slice1.rs │ │ ├── ch04_16_slice2.rs │ │ └── ch04_17_str.rs │ └── tests/ │ └── integration_tests.rs ├── ch05/ │ └── ex05/ │ ├── .gitignore │ ├── Cargo.toml │ ├── examples/ │ │ ├── ch05_01_box.rs │ │ ├── ch05_02_vec.rs │ │ ├── ch05_03_boxed_slice.rs │ │ ├── ch05_04_hash_map.rs │ │ ├── ch05_05_string1.rs │ │ ├── ch05_06_string2.rs │ │ ├── ch05_07_string3.rs │ │ ├── ch05_08_string4.rs │ │ ├── ch05_09_range.rs │ │ ├── ch05_10_option.rs │ │ ├── ch05_11_result.rs │ │ ├── ch05_12_type_alias.rs │ │ ├── ch05_13_struct1.rs │ │ ├── ch05_14_struct2.rs │ │ ├── ch05_15_struct3.rs │ │ ├── ch05_16_struct4.rs │ │ ├── ch05_17_struct5.rs │ │ ├── ch05_18_enum1.rs │ │ ├── ch05_19_enum2.rs │ │ ├── ch05_20_adv_types1.rs │ │ ├── ch05_21_adv_types2.rs │ │ ├── ch05_22_type_cast1.rs │ │ ├── ch05_23_type_cast2.rs │ │ ├── ch05_24_transmute.rs │ │ ├── ch05_25_type_coercion1.rs │ │ ├── ch05_26_type_coercion2.rs │ │ ├── ch05_27_type_coercion3.rs │ │ ├── ch05_28_type_coercion4.rs │ │ └── ch05_29_type_coercion5.rs │ └── tests/ │ └── integration_tests.rs ├── ch06/ │ └── leap-year/ │ ├── .gitignore │ ├── Cargo.toml │ ├── src/ │ │ └── main.rs │ └── tests/ │ └── integration_tests.rs ├── ch07/ │ ├── ex07/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── examples/ │ │ │ ├── ch07_01_value_scope.rs │ │ │ ├── ch07_02_move_semantics.rs │ │ │ ├── ch07_03_nll.rs │ │ │ ├── ch07_04_static_lifetime.rs │ │ │ ├── ch07_05_rc.rs │ │ │ ├── ch07_06_simple_refcell.rs │ │ │ ├── ch07_07_tls_refcell.rs │ │ │ ├── ch07_08_arc_rwlock.rs │ │ │ ├── ch07_09_static_rwlock.rs │ │ │ └── ch07_10_closure.rs │ │ └── tests/ │ │ └── integration_tests.rs │ └── toy-vec/ │ ├── .gitignore │ ├── Cargo.toml │ ├── examples/ │ │ ├── toy_vec_01.rs │ │ ├── toy_vec_02.rs │ │ └── toy_vec_03.rs │ ├── src/ │ │ └── lib.rs │ └── tests/ │ └── integration_tests.rs ├── ch08/ │ └── ex08/ │ ├── .gitignore │ ├── Cargo.toml │ ├── examples/ │ │ ├── ch08_01_trait_basics.rs │ │ ├── ch08_02_trait_basics.rs │ │ ├── ch08_03_trait_basics.rs │ │ ├── ch08_04_trait_generics.rs │ │ ├── ch08_05_trait_generics.rs │ │ ├── ch08_06_overload.rs │ │ ├── ch08_07_trait_object.rs │ │ ├── ch08_08_existential_impl_trait.rs │ │ ├── ch08_09_associated_const.rs │ │ ├── ch08_10_associated_type.rs │ │ ├── ch08_11_sized.rs │ │ └── ch08_12_trait_techniques.rs │ ├── examples-java/ │ │ └── Overload.java │ └── tests/ │ └── integration_tests.rs ├── ch09/ │ └── parser/ │ ├── .gitignore │ ├── Cargo.toml │ └── src/ │ └── main.rs ├── ch10/ │ └── wordcount/ │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── src/ │ │ ├── lib.rs │ │ └── main.rs │ ├── tests/ │ │ ├── char.rs │ │ ├── line.rs │ │ └── utils/ │ │ └── mod.rs │ └── text.txt ├── ch11/ │ ├── log-collector/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── api/ │ │ │ ├── Cargo.toml │ │ │ └── src/ │ │ │ └── lib.rs │ │ ├── cli/ │ │ │ ├── Cargo.toml │ │ │ └── src/ │ │ │ └── main.rs │ │ ├── docker-compose.yml │ │ ├── server/ │ │ │ ├── Cargo.toml │ │ │ ├── diesel.toml │ │ │ ├── migrations/ │ │ │ │ ├── .gitkeep │ │ │ │ ├── 00000000000000_diesel_initial_setup/ │ │ │ │ │ ├── down.sql │ │ │ │ │ └── up.sql │ │ │ │ └── 2018-12-28-161332_create_logs/ │ │ │ │ ├── down.sql │ │ │ │ └── up.sql │ │ │ └── src/ │ │ │ ├── db.rs │ │ │ ├── handlers.rs │ │ │ ├── main.rs │ │ │ ├── model.rs │ │ │ └── schema.rs │ │ └── test.csv │ ├── start-aw/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ └── main.rs │ │ └── static/ │ │ └── test.txt │ ├── static-files/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ └── templates/ │ ├── .gitignore │ ├── Cargo.toml │ ├── src/ │ │ └── main.rs │ └── templates/ │ └── index.html.tera ├── ch12/ │ ├── c-api/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── main.c │ │ └── src/ │ │ └── lib.rs │ ├── cffi-ownership/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── c_src/ │ │ │ └── ownership.c │ │ └── src/ │ │ └── main.rs │ ├── cffi_readline.rs │ ├── ffi-global/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── onigmo-rs/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── onigmo/ │ │ │ ├── Cargo.toml │ │ │ ├── examples/ │ │ │ │ └── simple.rs │ │ │ └── src/ │ │ │ └── lib.rs │ │ └── onigmo-sys/ │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── examples/ │ │ │ └── simple.rs │ │ ├── src/ │ │ │ └── lib.rs │ │ └── wrapper.h │ ├── opaque/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── ptr.rs │ ├── ptr_ownership.rs │ ├── repr-c/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ └── src/ │ │ └── main.rs │ ├── small_cffi.rs │ └── static-link/ │ ├── .gitignore │ ├── Cargo.toml │ ├── build.rs │ ├── c_src/ │ │ └── fib.c │ └── src/ │ └── main.rs ├── howto/ │ └── running-msvc-compiler.md └── install/ ├── docker.md └── windows10-vcpkg.md