feat: add wasm build targets, profile hooks, os_demo example, and restructure manual source
- Add `wasm`, `wasm-clean`, and `install-emscripten` phony targets to Makefile for WebAssembly cross-compilation - Insert `WREN_PROFILE_ENTER`/`WREN_PROFILE_EXIT` macros in `wren_vm.h` and `wren_vm.c` to support optional runtime profiling via `WREN_PROFILE_ENABLED` - Create `example/os_demo.wren` demonstrating Platform, Process, and conditional exit usage - Update `example/regex_demo.wren` to import `Match` and exercise Match object properties, groups, and `matchAll` - Remove static HTML manual pages (`base64.html`, `dns.html`, `json.html`) and replace with structured `manual_src/` directory containing Jinja2 templates, YAML metadata, and content pages - Expand `README.md` with build targets table, manual building instructions, source layout, and guide for adding new module documentation
This commit is contained in:
Vendored
+7
@@ -0,0 +1,7 @@
|
||||
// retoor <retoor@molodetz.nl>
|
||||
|
||||
import "os" for Process
|
||||
|
||||
System.print("before exit") // expect: before exit
|
||||
Process.exit(0)
|
||||
System.print("after exit")
|
||||
Vendored
+25
@@ -0,0 +1,25 @@
|
||||
// retoor <retoor@molodetz.nl>
|
||||
|
||||
import "regex" for Regex, Match
|
||||
|
||||
var re = Regex.new("(\\w+)-(\\d+)")
|
||||
var m = re.match("item-42")
|
||||
|
||||
System.print(m.text) // expect: item-42
|
||||
System.print(m.group(0)) // expect: item-42
|
||||
System.print(m.group(1)) // expect: item
|
||||
System.print(m.group(2)) // expect: 42
|
||||
|
||||
System.print(m.groups[0]) // expect: item-42
|
||||
System.print(m.groups[1]) // expect: item
|
||||
System.print(m.groups[2]) // expect: 42
|
||||
|
||||
System.print(m.groups.count) // expect: 3
|
||||
|
||||
var re2 = Regex.new("(a)(b)(c)(d)")
|
||||
var m2 = re2.match("abcd")
|
||||
System.print(m2.groups[0]) // expect: abcd
|
||||
System.print(m2.groups[1]) // expect: a
|
||||
System.print(m2.groups[2]) // expect: b
|
||||
System.print(m2.groups[3]) // expect: c
|
||||
System.print(m2.groups[4]) // expect: d
|
||||
Reference in New Issue
Block a user