https://github.com/lpogic/brackettree
Język znaczników Brackettree
https://github.com/lpogic/brackettree
data-storage java markup-language
Last synced: 10 months ago
JSON representation
Język znaczników Brackettree
- Host: GitHub
- URL: https://github.com/lpogic/brackettree
- Owner: lpogic
- Created: 2021-02-13T11:36:56.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2022-03-07T12:16:42.000Z (almost 4 years ago)
- Last Synced: 2025-02-04T22:39:22.858Z (11 months ago)
- Topics: data-storage, java, markup-language
- Language: Java
- Homepage:
- Size: 190 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# brackettree
Interfejs javy dla Nawiasowca - prostego formatu danych.
Implementacja wspiera wbudowany mechanizm serializacji Javy, potrafi zapisać/wczytać funkcje lambda, tablice, rekordy i całe grafy referencji. Pozwala na interpretowanie podstawowych typów danych (int, boolean ...) oraz automatyczną serializację/deserializację prostych obiektów w czytelnej dla ludzi formie (przy pomocy mechanizmów reflekcji). Udostępnia mechanizmy do przechowywania otwartego grafu referencji (przydatne, gdy serializowana jest część stanu programu). Potrafi zastąpić proste bazy danych bez potrzeby konfiguracji i projektowania tabel.
### Notacja BracketTree
```node1[ node2 ]``` ⇦ 'node2' jest potomkiem 'node1'.
```node3[ node4 [] node5 ]``` ⇦ 'node4' i 'node5' są potomkami 'node3'. Symbol '[]' jest niezbędny do oddzielenia 'node4' od 'node5'.
```
nodeA[
nodeB[ nodeC ]
nodeD[]
]
nodeE[ nodeF ]
```
⇧ 'nodeC' jest potomkiem 'nodeB'. 'nodeB' i 'nodeD' są potomkami 'nodeA'. Symbol '[]' po ostatnim potomku jest opcjonalny. 'nodeF' jest potomkiem 'nodeE'.
```| nodeG | [ nodeH ]``` ⇦ 'nodeH' jest potomkiem ' nodeG '. Jeśli wymiar tekstowy nie jest aktywny, początkowe i końcowe białe znaki są usuwane. Wymiar tekstowy jest otwierany przez znak '|'.
```|nodeJ | [ ~~| node|~ |~~ ]``` ⇦ ' node|~ ' jest potomkiem 'nodeJ '. Napis występujący bezpośrednio przed znakiem '|' jest hasłem portalu. Wymiar tekstowy jest zamykany przez hasło portalu poprzedzone znakiem '|'. Dla ' node|~ ' hasłem portalu jest '\~~', dla 'nodeJ ' hasło portalu jest puste.