Gegevens voor later bewaren

Programmeergidsen

Met opslag onthoudt een programma gegevens voor later. Blijvende of duurzame gegevens kunnen na een uitvoering bewaard blijven; tijdelijke of efemere gegevens bestaan alleen tijdens de sessie. Een momentopname is een kopie van de waarde op het bewaarmoment. Een quotum is het maximum dat je mag bewaren. De JSON-uitleg introduceert de waardesoorten die hieronder zijn toegestaan.

Nederlandse aanroep Canonieke ID Resultaat Vereisten
bewaarGegeven(sleutel, waarde) storage.set None Geldige tekstsleutel en JSON-compatibele waarde.
laadGegeven(sleutel, standaard) storage.get Opgeslagen waarde of standaard. Geldige tekstsleutel en JSON-compatibele standaardwaarde.
verwijderGegeven(sleutel) storage.delete Boolean Geldige tekstsleutel.
bewaardeSleutels() storage.keys List<Text> Geen argumenten.

Waarden mogen geen, eindige getallen, tekst, Booleans, lijsten en maps met
tekstuele sleutels zijn. Een sleutel is geen pad of bestandsnaam: niet leeg,
geen omringende witruimte of besturingstekens, maximaal 128 UTF-8-bytes.
Opslaan legt een momentopname vast; laden geeft een nieuwe kopie, ook van een
standaardwaarde. Sleutels worden deterministisch op UTF-8-bytevolgorde gesorteerd.

Een project met bruikbare appidentiteit kan begrensde eigen gegevens over
normale saves heen bewaren. Een los of nog niet gemigreerd bronbestand krijgt
verse tijdelijke opslag. Deze functies geven geen willekeurige bestandstoegang.
Zie de opslagspecificatie.

De opslaggrenzen lezen

Een node, of knooppunt, is hier één onderdeel van een opgeslagen waarde, zoals een lijst, map of waarde daarin. Nesten betekent verzamelingen in andere verzamelingen stoppen, zoals dozen in dozen. De nestgrens beperkt hoeveel lagen je mag gebruiken.

KiB betekent kibibyte: 1.024 bytes. 64 KiB is dus 65.536 bytes, niet noodzakelijk zoveel letters. Bij UTF-8 lees je waarom een letter of emoji meerdere bytes kan gebruiken.

Een schema is de afgesproken opbouw van een opgeslagen document. De versie vertelt Pliro welke opbouw het moet verwachten. Migratie werkt een oudere projectopbouw bij. De identiteit van een app vertelt de host welke eigen opslag bij dat project hoort. Atomair vervangen betekent dat opslaan als één geheel lukt of de vorige gegevens intact laat. Een mislukte schrijfactie mag geen half nieuw document achterlaten. Deterministische volgorde betekent dat dezelfde sleutels steeds hetzelfde worden gesorteerd. Bytevolgorde is een computervolgorde, niet noodzakelijk woordenboekvolgorde.

Gedrag en details

Een bruikbare schema-3-identiteit van .bipli bezit haar gegevensnaamruimte. Normaal opslaan, verplaatsen en hernoemen bewaren die; Opslaan als, Dupliceren en Importeren als kopie maken een aparte identiteit. Losse bronnen en ongemigreerde projecten gebruiken tijdelijke sessieopslag.

Limieten: 128 sleutels; 64 KiB per JSON-waarde; 512 KiB voor het volledige document; 32 nestniveaus en 8.192 waarden/nodes per waarde. Mislukte schrijfacties bewaren vorige gegevens. E4014 betekent onbeschikbare opslag, E4015 een ongeldige sleutel, E4016 een ongeschikte waarde en E4017 overschreden quota. Externe preview toont desktopuitvoering en ontvangt geen privégegevens.

Gerelateerde lemma’s

Syntaxis en waarden · Ingebouwde functies · Programmeergidsen