Просмотр исходного кода

doc/src/misc/hashchain/hashchain: Improve readability of docs, add rust codeblock for syntax highlighting, remove trailing spaces, add header to Example1, add link to Example1 reference

Andrew 3 лет назад
Родитель
Сommit
92488443d2
1 измененных файлов с 51 добавлено и 51 удалено
  1. 51 51
      doc/src/misc/hashchain/hashchain.md

+ 51 - 51
doc/src/misc/hashchain/hashchain.md

@@ -1,99 +1,99 @@
-# Structures 
+# Structures
 
 ## EventId
 
-Hash of `Event` 
+Hash of `Event`
 
-	type EventId = [u8; 32];	
+```rust
+type EventId = [u8; 32];
+```
 
-## EventAction 
+## EventAction
 
 The `Event` could have many actions according to the underlying data.
 
-	enum EventAction { ... };	
+```rust
+enum EventAction { ... };
+```
 
 ## Event
 
 | Description            | Data Type      | Comments                    |
 |----------------------- | -------------- | --------------------------- |
-| previous_event_hash    | `EventId` 	  | Hash of the previous `Event`|
-| action     			 | `EventAction`  | `Event`'s action 			|
-| timestamp     		 | u64  		  | `Event`'s timestamp 		|
+| previous_event_hash    | `EventId`      | Hash of the previous `Event`|
+| action                 | `EventAction`  | `Event`'s action            |
+| timestamp              | u64            | `Event`'s timestamp         |
 
 ## EventNode
 
-| Description    | Data Type      		  | Comments                    			 			  |
+| Description    | Data Type              | Comments                                              |
 |--------------- | ---------------------- | ----------------------------------------------------- |
-| parent    	 | Option<`EventId`> 	  | Only current root has this set to None   			  |
-| event     	 | `Event`  			  | The `Event` itself 					       			  |
-| children     	 | Vec<`EventId`>  	      | The `Event`s which has parent as this `Event` hash    |
+| parent         | Option<`EventId`>      | Only current root has this set to None                |
+| event          | `Event`                | The `Event` itself                                    |
+| children       | Vec<`EventId`>         | The `Event`s which has parent as this `Event` hash    |
 
-## Model 
+## Model
 
-The `Model` consist of chains(`EventNodes`) structured as a tree, each chain has Event-based
-list. To maintain strict order in chain, Each `Event` dependent on the hash of the previous `Event`. 
-All the chains share a root `Event` to preserve the tree structure. 
+The `Model` consists of chains (`EventNodes`) structured as a tree; whereby, each chain has an `Event`-based
+list. To maintain a strict order of chains, each `Event` depends on the hash of the previous `Event`.
+All of the chains share a root `Event` to preserve the tree structure.
 
-| Description   | Data Type      		  		   | Comments                      |
+| Description   | Data Type                        | Comments                      |
 |-------------- | -------------------------------- | ----------------------------- |
-| current_root  | `EventId` 	  		  		   | The root `Event` for the tree |
-| orphans       | HashMap<`EventId`, `Event`>  	   | Recently added `Event`s 	   |
-| event_map     | HashMap<`EventId`, `EventNode`>  | The actual tree  		 	   |
-| events_queue  | `EventsQueue`					   | Communication channel 
+| current_root  | `EventId`                        | The root `Event` for the tree |
+| orphans       | HashMap<`EventId`, `Event`>      | Recently added `Event`s       |
+| event_map     | HashMap<`EventId`, `EventNode`>  | The actual tree               |
+| events_queue  | `EventsQueue`                    | Communication channel         |
 
-## View 
+## View
 
-The `View` check the `Model` for new `Event`s, then dispatch these `Event`s to the clients. 
+The `View` checks the `Model` for new `Event`s and then dispatches these `Event`s to the clients.
 
 `Event`s are sorted according to the timestamp attached to each `Event`.
 
-| Description   | Data Type      	   		    | Comments               |
+| Description   | Data Type                     | Comments               |
 |-------------- | ----------------------------- | ---------------------- |
-| seen  		| HashMap<`EventId`, `Event`>   | A list of `Event`s 	 |
+| seen          | HashMap<`EventId`, `Event`>   | A list of `Event`s     |
 
-## EventsQueue 
+## EventsQueue
 
 The `EventsQueue` used to transport the event from `Model` to `View`.
 
-The `Model` fill The `EventsQueue` with the new `Event`, while the `View` keep
-fetching `Event`s from queue continuously.
+The `Model` fills the `EventsQueue` with the new `Event`, while the `View` continuously
+fetches `Event`s from queue.
 
-# Architecture 
+# Architecture
 
-Tau using Model–view software architecture. All the operations, main data structures, 
-and handling messages from network protocol, happen in the `Model` side. 
-While keeping the `View` independent of the `Model` and focusing on getting update 
-from it continuously.
+Tau uses Model–view software architecture. All of the operations, main data structures,
+and message handling from the network protocol happen on the `Model` side.
+Further, this keeps the `View` independent of the `Model`
+and allows the `View` to focus on receiving continuous updates from it.
 
-## Add new Event
+## Add new `Event`
 
-Once receiving new `Event` from the network protocol, the `Event` will be add to the
-orphans list. 
+Upon receiving a new `Event` from the network protocol, the `Event` will be added to the
+orphans list.
 
-After the ancestor for the new orphan gets found, The orphan `Event` will be add to the chain
+After the ancestor of the new orphan is found, the orphan `Event` will be added to the chain
 according to its ancestor.
 
-For example, in the <em> Example1 </em> below, An `Event` add to the first chain if
-its previous hash is Event-A1
+For example: in [Example1](#example1) below, an `Event` is added to the first chain if
+its previous hash is Event-A1.
 
-## Remove old leaves 
+## Remove old leaves
 
-Remove leaves which are too far from the head leaf(the leaf in the longest chain).
+Remove leaves which are too far from the head leaf (the leaf in the longest chain).
 
-The depth difference from the common ancestor between a leaf to be removed and a head leaf 
-must be greater than `MAX_DEPTH`. 
+The depth difference from the common ancestor between a leaf to be removed and a head leaf
+must be greater than `MAX_DEPTH`.
 
-## Update the root 
+## Update the root
 
 Finding the highest common ancestor for the leaves and assign it as the root
 for the tree.
 
-The highest common ancestor must have height greater than `MAX_HEIGHT`.
-
-![data structure](../../assets/mv_event.png)
-
-Example1
-
-
+The highest common ancestor must have a height greater than `MAX_HEIGHT`.
 
+## Example1
 
+![data structure](../../assets/mv_event.png)