
Π’Π΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΡ Ontology Wasm Π½Π°ΠΌΠ°Π»ΡΠ²Π° ΡΠ°Π·Ρ
ΠΎΠ΄ΠΈΡΠ΅ Π·Π° ΠΏΡΠ΅Ρ
Π²ΡΡΠ»ΡΠ½Π΅ Π½Π° ΡΠΌΠ°ΡΡ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠΈ dApp ΡΡΡ ΡΠ»ΠΎΠΆΠ½Π° Π±ΠΈΠ·Π½Π΅Ρ Π»ΠΎΠ³ΠΈΠΊΠ° Π² Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½, Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΎΠ±ΠΎΠ³Π°ΡΡΠ²Π°ΠΉΠΊΠΈ Π΅ΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π½Π° dApp.
ΠΠ°ΡΡΠΎΡΡΠΈΡΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Rust ΠΈ C++. Rust ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Wasm, Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½ΠΈΡΡ Π±Π°ΠΉΡ-ΠΊΠΎΠ΄ Π΅ ΠΏΠΎ-ΠΏΡΠΎΡΡ, ΠΊΠΎΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈ ΡΠ°Π·Ρ
ΠΎΠ΄ΠΈΡΠ΅ Π·Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠΈ. Π ΡΠ°ΠΊΠ°, ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Rust Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ° Ontology?
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Wasm-ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Rust
Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ
β Π΅ Π΄ΠΎΠ±ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΠΎΡΡΡΠ΅Ρ Π½Π° Rust, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠΌΠ°Π³Π° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π΄Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΡΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠ΄Π° ΠΈ Π²ΡΠ½ΡΠ½ΠΈΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠ° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ Π½ΠΎΠ² Ontology Wasm-ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ, ΠΏΡΠΎΡΡΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅ΡΠ΅ ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π°:
![]()
Π‘ΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΊΠΎΡΡΠΎ ΡΡ Π³Π΅Π½Π΅ΡΠΈΡΠ°:

Π€Π°ΠΉΠ»ΡΡ Cargo.toml ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΈΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. Π‘Π΅ΠΊΡΠΈΡΡΠ° [lib] Π² ΡΠ°ΠΉΠ»Π° ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ Π·Π°Π΄Π°Π΄Π΅Π½Π° Π½Π° crate-type = ["cdylib"]. Π€Π°ΠΉΠ»ΡΡ lib.rs ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΏΠΈΡΠ°Π½Π΅ Π½Π° Π»ΠΎΠ³ΠΈΠΊΠ°ΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, ΡΡΡΠ±Π²Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π·Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π² ΡΠ΅ΠΊΡΠΈΡΡΠ° [dependencies] Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ°ΠΉΠ» Cargo.toml:

Π‘ ΡΠ°Π·ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²Π°ΡΠΈ Ρ Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½Π° Ontology, ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ ΠΊΠ°ΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΠ° Π·Π° ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ.
Π€ΡΠ½ΠΊΡΠΈΡ Π·Π° Π²Ρ ΠΎΠ΄ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°
ΠΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° ΠΈΠΌΠ° ΡΡΠ½ΠΊΡΠΈΡ Π·Π° Π²Ρ ΠΎΠ΄, ΠΏΠΎΠ΄ΠΎΠ±Π½Π° Π½Π° main-ΡΡΠ½ΠΊΡΠΈΡΡΠ°, Π½ΠΎ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΡΡ Π½ΡΠΌΠ° main-ΡΡΠ½ΠΊΡΠΈΡ. ΠΠΎΠ³Π°ΡΠΎ ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° Wasm-ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ Ρ Rust, ΡΡΠ½ΠΊΡΠΈΡΡΠ° invoke ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ Π·Π° Π²Ρ ΠΎΠ΄ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°. ΠΠΌΠ΅ΡΠΎ Π½Π° ΡΡΠ½ΠΊΡΠΈΡΡΠ° Π² Rust ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄ Π½Π° Rust Π² Π±Π°ΠΉΡ-ΠΊΠΎΠ΄, ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΠΎΡ Π²ΠΈΡΡΡΠ°Π»Π½Π°ΡΠ° ΠΌΠ°ΡΠΈΠ½Π°. ΠΠ° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ·Π»ΠΈΡΠ΅Π½ ΠΊΠΎΠ΄ ΠΈ Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ°Π»ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°, ΡΡΠ½ΠΊΡΠΈΡΡΠ° invoke Π΄ΠΎΠ±Π°Π²Ρ Π°Π½ΠΎΡΠ°ΡΠΈΡ #[no_mangle].
ΠΠ°ΠΊ ΡΡΠ½ΠΊΡΠΈΡΡΠ° invoke ΠΏΠΎΠ»ΡΡΠ°Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡΠ°?
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ontio_std ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΡΡΠ½ΠΊΡΠΈΡ runtime::input(), Π·Π° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ZeroCopySource Π·Π° Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΠ»ΡΡΠ΅Π½ ΠΌΠ°ΡΠΈΠ² ΠΎΡ Π±Π°ΠΉΡΠΎΠ²Π΅. ΠΡΡΠ²ΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΠ΅Π½ ΠΌΠ°ΡΠΈΠ² ΠΎΡ Π±Π°ΠΉΡΠΎΠ²Π΅ Π΅ ΠΈΠΌΠ΅ΡΠΎ Π½Π° invoke ΠΌΠ΅ΡΠΎΠ΄Π°, Π° ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΠΌΠ΅ΡΠΎΠ΄Π°.
ΠΠ°ΠΊ ΡΠ΅ Π²ΡΡΡΠ° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΡΡ ΠΎΡ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°?
Π€ΡΠ½ΠΊΡΠΈΡΡΠ° runtime::ret, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½Π° ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ontio_std, Π²ΡΡΡΠ° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ° ΠΎΡ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΌΠ΅ΡΠΎΠ΄Π°.
ΠΠ°Π²ΡΡΡΠ΅Π½Π°ΡΠ° invoke ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΏΠΎ ΡΠ»Π΅Π΄Π½ΠΈΡ Π½Π°ΡΠΈΠ½:

Π‘Π΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°
Π ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠΈ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π²ΠΈΠ½Π°Π³ΠΈ ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ²Π°Ρ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΡΡΡ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° ΠΈ Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ°, ΠΎΡΠΎΠ±Π΅Π½ΠΎ ΠΊΠ°ΠΊ Π΄Π° Π·Π°ΠΏΠ°Π·ΡΡ struct ΡΠΈΠΏ Π΄Π°Π½Π½ΠΈ Π² Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Ρ ΠΌΠ°ΡΠΈΠ² ΠΎΡ Π±Π°ΠΉΡΠΎΠ²Π΅, ΠΏΡΠΎΡΠ΅ΡΠ΅Π½ ΠΎΡ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡΡΠ°Ρ struct ΡΠΈΠΏ Π΄Π°Π½Π½ΠΈ.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ontio_std ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ Π½Π° Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ ΠΈ ΠΊΠΎΠ΄Π΅Ρ Π·Π° ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Π΄Π°Π½Π½ΠΈ. ΠΠΎΠ»Π΅ΡΠ°ΡΠ° Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° struct ΡΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ Π½Π° Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ ΠΈ ΠΊΠΎΠ΄Π΅Ρ, ΡΠ°ΠΊΠ° ΡΠ΅ ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΈ Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π°. ΠΠ½ΡΡΠ°Π½ΡΠΈΠΈΡΠ΅ Π½Π° ΠΊΠ»Π°ΡΠ° Sink ΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ, ΠΊΠΎΠ³Π°ΡΠΎ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ. ΠΠ½ΡΡΠ°Π½ΡΠΈΡΡΠ° Π½Π° ΠΊΠ»Π°ΡΠ° Sink ΠΈΠΌΠ° ΠΏΠΎΠ»Π΅ ΠΎΡ ΡΠΈΠΏ set buf, ΠΊΠΎΠ΅ΡΠΎ ΡΡΡ ΡΠ°Π½ΡΠ²Π° Π±Π°ΠΉΡΠΎΠ²ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ, Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π² buf.
ΠΠ° Π΄Π°Π½Π½ΠΈ Ρ ΡΠΈΠΊΡΠΈΡΠ°Π½Π° Π΄ΡΠ»ΠΆΠΈΠ½Π° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ: byte, u16, u32, u64 ΠΈ Ρ.Π½.) Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² ΠΌΠ°ΡΠΈΠ² ΠΎΡ Π±Π°ΠΉΡΠΎΠ²Π΅ ΠΈ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π² buf; Π·Π° Π΄Π°Π½Π½ΠΈ Ρ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π° Π΄ΡΠ»ΠΆΠΈΠ½Π°, ΠΏΡΡΠ²ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ° Π΄ΡΠ»ΠΆΠΈΠ½Π°ΡΠ°, Π° ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π΄Π°Π½ΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΈ ΡΠ΅Π»ΠΈ ΡΠΈΡΠ»Π° Ρ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΡΠ°Π·ΠΌΠ΅Ρ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ u16, u32 ΠΈΠ»ΠΈ u64 ΠΈ Ρ.Π½.).
ΠΠ΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π΅ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡΡΠ° Π½Π° ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ°. ΠΠ° Π²ΡΠ΅ΠΊΠΈ ΠΌΠ΅ΡΠΎΠ΄ Π½Π° ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΠΌΠ° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π°Ρ ΠΌΠ΅ΡΠΎΠ΄ Π½Π° Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ. ΠΠ΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½ΡΡΠ°Π½ΡΠΈΠΈ Π½Π° ΠΊΠ»Π°ΡΠ° Source. Π’Π°Π·ΠΈ ΠΈΠ½ΡΡΠ°Π½ΡΠΈΡ ΠΈΠΌΠ° Π΄Π²Π΅ ΠΏΠΎΠ»Π΅ΡΠ° buf ΠΈ pos. Buf ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π±ΡΠ΄Π°Ρ Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ, Π° pos ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°, Π·Π° Π΄Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π° ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΠΏΠΎΠ·ΠΈΡΠΈΡ Π½Π° ΡΠ΅ΡΠ΅Π½Π΅. ΠΠΎΠ³Π°ΡΠΎ ΡΠ΅ ΡΠ΅ΡΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½ ΡΠΈΠΏ Π΄Π°Π½Π½ΠΈ, Π°ΠΊΠΎ Π·Π½Π°Π΅ΡΠ΅ Π΄ΡΠ»ΠΆΠΈΠ½Π°ΡΠ° ΠΈΠΌ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΈ ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ, Π·Π° Π΄Π°Π½Π½ΠΈ Ρ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½Π° Π΄ΡΠ»ΠΆΠΈΠ½Π° β ΠΏΡΡΠ²ΠΎ ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ Π΄ΡΠ»ΠΆΠΈΠ½Π°ΡΠ°, Π° ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ.
ΠΠΎΡΡΡΠΏ ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² Π²Π΅ΡΠΈΠ³Π°ΡΠ°
Ontology-wasm-cdt-rust β ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ Π΄Π°Π½Π½ΠΈ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ°, ΠΊΠΎΠΉΡΠΎ Π΅ ΡΠ΄ΠΎΠ±Π΅Π½ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π΄Π° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΊΠ°ΡΠΎ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅, ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅, ΠΏΡΠΎΠΌΡΠ½Π° ΠΈ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΠΏΠΎ ΡΠ»Π΅Π΄Π½ΠΈΡ Π½Π°ΡΠΈΠ½:
- database::get(key) β ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ΅ Π·Π° Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΌΡΠ΅ΠΆΠ°ΡΠ°, Π° ΠΊΠ»ΡΡΡΡ Π·Π°ΠΏΠΈΡΠ²Π° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° AsRef;
- database::put(key, value) β ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ΅ Π·Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ°. ΠΠ»ΡΡΡΡ Π·Π°ΠΏΠΈΡΠ²Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° AsRef, Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Π·Π°ΠΏΠΈΡΠ²Π° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Encoder;
- database::delete(key) β ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ΅ Π·Π° ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΌΡΠ΅ΠΆΠ°ΡΠ°, Π° ΠΊΠ»ΡΡΡΡ Π·Π°ΠΏΠΈΡΠ²Π° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° AsRef.
Π’Π΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°
ΠΠΎΠ³Π°ΡΠΎ ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°, ΠΈΠΌΠ°ΠΌΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π΄Π°Π½Π½ΠΈ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΠΈ Π½ΠΈ ΡΡΡΠ±Π²Π° ΡΡΠΎΡΠ²Π΅ΡΠ½Π°ΡΠ° Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π°, Π·Π° Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌ Π±Π°ΠΉΡΠΊΠΎΠ΄Π° Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°, Π·Π°ΡΠΎΠ²Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΡΠ°Π·Π²Π΅ΡΠ½Π΅ΠΌ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ° Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ° Π·Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅. ΠΠΎ ΡΠ°ΠΊΡΠ² ΠΌΠ΅ΡΠΎΠ΄ Π½Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΡΠΈΡΠ΅Π½. ΠΠ° Π΄Π° ΡΠ»Π΅ΡΠ½ΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΏΡΠΈ ΡΠ΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠΈΡΠ΅, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ontio_std ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ mock-ΠΌΠΎΠ΄ΡΠ» Π·Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅. Π’ΠΎΠ·ΠΈ ΠΌΠΎΠ΄ΡΠ» ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΡΠΈΠΌΡΠ»Π°ΡΠΈΡ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ°, ΡΠ»Π΅ΡΠ½ΡΠ²Π°ΠΉΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π² ΡΠ½ΠΈΡ-ΡΠ΅ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈ .
ΠΠ΅Π±ΡΠ³Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°
console::debug(msg) ΠΈΠ·ΠΊΠ°ΡΠ²Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π΄Π΅Π±ΡΠ³Π²Π°Π½Π΅ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π΄Π΅Π±ΡΠ³Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ° msg ΡΠ΅ Π±ΡΠ΄Π΅ Π·Π°ΠΏΠΈΡΠ°Π½Π° Π² Π»ΠΎΠ³-ΡΠ°ΠΉΠ»Π° Π½Π° Π½ΠΎΠ΄Π°ΡΠ°. ΠΠ°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π΅ Π΄Π° Π΅ Π·Π°Π΄Π°Π΄Π΅Π½ΠΎ Π½ΠΈΠ²ΠΎΡΠΎ Π½Π° Π»ΠΎΠ³-ΡΠ°ΠΉΠ»Π° Π² ΡΠ΅ΠΆΠΈΠΌ Π½Π° Π΄Π΅Π±ΡΠ³Π²Π°Π½Π΅, ΠΊΠΎΠ³Π°ΡΠΎ Π΅ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° ΡΠ΅ΡΡΠΎΠ²Π° Π½ΠΎΠ΄Π° Ontology.
runtime::notify(msg) ΠΈΠ·ΠΊΠ°ΡΠ²Π° ΡΡΠΎΡΠ²Π΅ΡΠ½Π°ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π΄Π΅Π±ΡΠ³Π²Π°Π½Π΅ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π΄Π΅Π±ΡΠ³Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°. Π’ΠΎΠ·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ ΡΠ΅ Π·Π°ΠΏΠ°Π·ΠΈ Π²Π½Π΅ΡΠ΅Π½Π°ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π·Π°ΠΏΠΈΡΠ²Π°Π½ ΠΎΡ ΠΌΡΠ΅ΠΆΠ°ΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΌΠ΅ΡΠΎΠ΄Π° getSmartCodeEvent.
Π‘ΡΠ°ΡΠΈΡΡΠ° Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π²Π΅Π΄Π΅Π½Π° ΠΎΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ° Π½Π° Hashrate&Shares ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ Π·Π° OntologyRussia.
ΠΠΈΠ΅ Π»ΠΈ ΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ? ΠΡΠΈΡΡΠ΅Π΄ΠΈΠ½Π΅ΡΠ΅ ΡΠ΅ ΠΊΡΠΌ Π½Π°ΡΠ°ΡΠ° ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠ° ΠΎΠ±ΡΠ½ΠΎΡΡ Π½Π° . ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ Π² Π½Π° Π½Π°ΡΠΈΡ ΡΠ°ΠΉΡ, ΡΠ°ΠΌ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎ.
Ontology
- /
- Telegram /
- /
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
