Reformat docs.

This commit is contained in:
Stephen Chung 2020-07-16 12:09:40 +08:00
parent 16fbfbb606
commit 197f5d370f
9 changed files with 28 additions and 22 deletions

View File

@ -18,8 +18,8 @@ Supported targets and builds
* WebAssembly (WASM) * WebAssembly (WASM)
* `no-std` * `no-std`
Standard Features Standard features
---------------- -----------------
* Easy-to-use language similar to JavaScript+Rust with dynamic typing. * Easy-to-use language similar to JavaScript+Rust with dynamic typing.
* Tight integration with native Rust [functions](https://schungx.github.io/rhai/rust/functions.html) and [types]([#custom-types-and-methods](https://schungx.github.io/rhai/rust/custom.html)), including [getters/setters](https://schungx.github.io/rhai/rust/getters-setters.html), [methods](https://schungx.github.io/rhai/rust/custom.html) and [indexers](https://schungx.github.io/rhai/rust/indexers.html). * Tight integration with native Rust [functions](https://schungx.github.io/rhai/rust/functions.html) and [types]([#custom-types-and-methods](https://schungx.github.io/rhai/rust/custom.html)), including [getters/setters](https://schungx.github.io/rhai/rust/getters-setters.html), [methods](https://schungx.github.io/rhai/rust/custom.html) and [indexers](https://schungx.github.io/rhai/rust/indexers.html).
@ -39,19 +39,19 @@ Standard Features
* Scripts are [optimized](https://schungx.github.io/rhai/engine/optimize.html) (useful for template-based machine-generated scripts) for repeated evaluations. * Scripts are [optimized](https://schungx.github.io/rhai/engine/optimize.html) (useful for template-based machine-generated scripts) for repeated evaluations.
* Support for [minimal builds](https://schungx.github.io/rhai/start/builds/minimal.html) by excluding unneeded language [features](https://schungx.github.io/rhai/start/features.html). * Support for [minimal builds](https://schungx.github.io/rhai/start/builds/minimal.html) by excluding unneeded language [features](https://schungx.github.io/rhai/start/features.html).
Protection Against Attacks Protection against attacks
------------------------- --------------------------
* Sand-boxed - the scripting engine, if declared immutable, cannot mutate the containing environment unless explicitly permitted (e.g. via a `RefCell`). * Sand-boxed - the scripting engine, if declared immutable, cannot mutate the containing environment unless explicitly permitted (e.g. via a `RefCell`).
* Rugged - protected against malicious attacks (such as [stack-overflow](https://schungx.github.io/rhai/safety/max-call-stack.html), [over-sized data](https://schungx.github.io/rhai/safety/max-string-size.html), and [runaway scripts](https://schungx.github.io/rhai/safety/max-operations.html) etc.) that may come from untrusted third-party user-land scripts. * Rugged - protected against malicious attacks (such as [stack-overflow](https://schungx.github.io/rhai/safety/max-call-stack.html), [over-sized data](https://schungx.github.io/rhai/safety/max-string-size.html), and [runaway scripts](https://schungx.github.io/rhai/safety/max-operations.html) etc.) that may come from untrusted third-party user-land scripts.
* Track script evaluation [progress](https://schungx.github.io/rhai/safety/progress.html) and manually terminate a script run. * Track script evaluation [progress](https://schungx.github.io/rhai/safety/progress.html) and manually terminate a script run.
For Those Who Actually Want Their Own Language For those who actually want their own language
--------------------------------------------- ---------------------------------------------
* Use as a [DSL](https://schungx.github.io/rhai/engine/dsl.html). * Use as a [DSL](https://schungx.github.io/rhai/engine/dsl.html).
* Define [custom operators](https://schungx.github.io/rhai/engine/custom-op.html).
* Restrict the language by surgically [disabling keywords and operators](https://schungx.github.io/rhai/engine/disable.html). * Restrict the language by surgically [disabling keywords and operators](https://schungx.github.io/rhai/engine/disable.html).
* Define [custom operators](https://schungx.github.io/rhai/engine/custom-op.html).
* Extend the language with [custom syntax](https://schungx.github.io/rhai/engine/custom-syntax.html). * Extend the language with [custom syntax](https://schungx.github.io/rhai/engine/custom-syntax.html).
Documentation Documentation

View File

@ -5,6 +5,12 @@ Advanced Topics
This section covers advanced features such as: This section covers advanced features such as:
* [Script optimization] * Simulated [Object Oriented Programming][OOP].
* The dreaded (or beloved for those with twisted tastes) [`eval`] statement * [`serde`] integration.
* [Script optimization].
* [Domain-Specific Languages][DSL].
* The dreaded (or beloved for those with twisted tastes) [`eval`] statement.

View File

@ -3,8 +3,8 @@ Maximum Size of Arrays
{{#include ../links.md}} {{#include ../links.md}}
Limiting How Large Arrays Can Grow Limit How Large Arrays Can Grow
--------------------------------- ------------------------------
Rhai by default does not limit how large an [array] can be. Rhai by default does not limit how large an [array] can be.

View File

@ -3,8 +3,8 @@ Maximum Call Stack Depth
{{#include ../links.md}} {{#include ../links.md}}
Limiting How Stack Usage by Scripts Limit How Stack Usage by Scripts
---------------------------------- -------------------------------
Rhai by default limits function calls to a maximum depth of 128 levels (16 levels in debug build). Rhai by default limits function calls to a maximum depth of 128 levels (16 levels in debug build).

View File

@ -3,8 +3,8 @@ Maximum Size of Object Maps
{{#include ../links.md}} {{#include ../links.md}}
Limiting How Large Object Maps Can Grow Limit How Large Object Maps Can Grow
-------------------------------------- -----------------------------------
Rhai by default does not limit how large (i.e. the number of properties) an [object map] can be. Rhai by default does not limit how large (i.e. the number of properties) an [object map] can be.

View File

@ -3,8 +3,8 @@ Maximum Number of Operations
{{#include ../links.md}} {{#include ../links.md}}
Limiting How Long a Script Can Run Limit How Long a Script Can Run
--------------------------------- ------------------------------
Rhai by default does not limit how much time or CPU a script consumes. Rhai by default does not limit how much time or CPU a script consumes.

View File

@ -3,8 +3,8 @@ Maximum Statement Depth
{{#include ../links.md}} {{#include ../links.md}}
Limiting How Deeply-Nested a Statement Can Be Limit How Deeply-Nested a Statement Can Be
-------------------------------------------- -----------------------------------------
Rhai by default limits statements and expressions nesting to a maximum depth of 128 Rhai by default limits statements and expressions nesting to a maximum depth of 128
(which should be plenty) when they are at _global_ level, but only a depth of 32 (which should be plenty) when they are at _global_ level, but only a depth of 32

View File

@ -3,8 +3,8 @@ Maximum Length of Strings
{{#include ../links.md}} {{#include ../links.md}}
Limiting How Long Strings Can Grow Limit How Long Strings Can Grow
--------------------------------- ------------------------------
Rhai by default does not limit how long a [string] can be. Rhai by default does not limit how long a [string] can be.

View File

@ -1,5 +1,5 @@
Tracking Progress and Force-Termination Track Progress and Force-Termination
====================================== ===================================
{{#include ../links.md}} {{#include ../links.md}}