uce/site/test/dtree.uce
2026-04-19 21:15:52 +00:00

95 lines
1.8 KiB
Plaintext

RENDER(Request& context)
{
DTree t;
<>
<link rel="stylesheet" href='style.css'></link>
<h1>
<a href="index.uce">UCE Test</a>:
DTree
</h1>
<h2>Value Types</h2>
<pre><?
t.set("String test");
print("String: ", t.to_string(), "\n");
t.set(true);
print("bool: ", t.to_string(), "\n");
t.set(1234.5678);
print("float: ", t.to_string(), "\n");
t.set(&t);
print("pointer: ", t.to_string(), "\n");
?></pre>
<h2>Nested Tree</h2>
<pre><?
t.key("a")->set("valueA");
t.key("b")->set("valueB");
t.key("c")->key("c-d")->set("valueCD");
t.key("c")->key("c-e")->set("valueCE");
t.key("c")->key("c-f")->set(&t);
t.key("g")->key("g-h")->key("h-i")->set("valueHI");
t["g"]["x"]["y1"] = "XYZ1";
t["g"]["x"]["y2"] = &t;
t["g"]["x"]["y3"] = time();
t["g"]["x"]["y4"] = "Ünicödä";
print(var_dump(t));
?></pre>
<h2>Array Merge — Associative</h2>
<pre><?
DTree assoc_left;
assoc_left["name"] = "left";
assoc_left["shared"] = "left-value";
DTree assoc_right;
assoc_right["shared"] = "right-value";
assoc_right["extra"] = "new-value";
print("left:\n", var_dump(assoc_left), "\n");
print("right:\n", var_dump(assoc_right), "\n");
print("merged:\n", var_dump(array_merge(assoc_left, assoc_right)));
?></pre>
<h2>Array Merge — List</h2>
<pre><?
DTree list_left;
list_left.set_array();
DTree a; a = "A"; list_left.push(a);
DTree b; b = "B"; list_left.push(b);
DTree list_right;
list_right.set_array();
DTree c; c = "C"; list_right.push(c);
DTree d; d = "D"; list_right.push(d);
print("left:\n", var_dump(list_left), "\n");
print("right:\n", var_dump(list_right), "\n");
print("merged:\n", var_dump(array_merge(list_left, list_right)));
?></pre>
<details>
<summary>Request Parameters</summary>
<pre><?= var_dump(context.params) ?></pre>
</details>
</>
}