Wikipedia:Lua/Modul/JSONutil/de
Erscheinungsbild
Vorlagenprogrammierung | Diskussionen | Lua | Test | Unterseiten | |||
Modul | Deutsch | English
|
Modul: | Dokumentation |
JSONutil
– Modul zur Vorbereitung und Analyse von JSON-Daten, die als Parameterwerte an Lua-Module übergeben werden.
Zeilenumbrüche und Tabulatoren in Zeichenketten werden toleriert.
Statt eines pauschalen „Invalid“ wird versucht, einige typische Fehler zu detektieren und mit auffindbarem Kontext zu melden.
Funktionen für Vorlagen
- failsafe
- Versionsbezeichnung:
2020-11-08
- Optionaler Zusatzparameter
1
– Mindestversionsbezeichnung oderwikidata
- Rückgabewert:
- Leer, falls Mindestversionsbezeichnung nicht erfüllt
- Auf Wikidata registrierte Versionsbezeichnung (
2020-11-08
) beiwikidata
, oder lokal falls dort keine gefunden
Funktionen für Lua-Module
Einbindung in andere Module:
local lucky, JSONutil = pcall( require, "Module:JSONutil" )
if type( JSONutil ) == "table" then
JSONutil = JSONutil.JSONutil()
else
-- Fehlerfall; JSONutil enthält Fehlermeldung
return "<span class=\"error\">" .. JSONutil .. "</span>"
end
Danach stehen zur Verfügung:
- JSONutil.failsafe(atleast)
- Versionsbezeichnung
- atleast
optional
nil oder Mindestversion
- atleast
- Rückgabewert: string oder
false
- JSONutil.fair(apply)
- Reduziere freies JSON-Zeilenformat auf strikten JSON-Code und analysiere auf Fehler.
- apply
string mit JSON-Code
- apply
- Rückgabewerte:
- string mit Fehlerkennung, oder
false
wenn unbeanstandet. - string mit Fehlerkontext, oder JSON-Code wenn unbeanstandet.
- string mit Fehlerkennung, oder
- JSONutil.fault(alert, add, adapt)
- Stelle Fehlermeldung formatiert und in angepasster Sprache dar.
- alert
string mit Fehlerkennung - add
optional
string mit Fehlerkontext - adapt
optional – Anpassung der Sprache der Meldung
- alert
- Rückgabewert:
- string mit HTML-Fehlermeldung.
- JSONutil.fetch(apply, always, adapt)
- Konvertiere JSON robust in Lua
- apply
string mit JSON-Code - always
optional
true
, wenn immer vorbeugend auf freies Zeilenformat und strikten JSON-Code geprüft werden soll
Sinnvoll für die Migration HHVM→PHP7 2019. - adapt
optional – Anpassung der Sprache der Meldung
- apply
- Rückgabewert:
- string mit HTML-Fehlermeldung in angepasster Sprache.
- table mit JSON-Inhalt.
Sprachpräferenzen
Das Argument adapt
erlaubt eine Anpassung der Sprache der Meldung und kann folgende Datentypen annehmen:
function
– Callback- Rückgabewert ist der bestmögliche Meldungstext
- Zwei Argumente:
- table, mit Mapping: Sprachcode → Meldungstext
- string, optional, mit Meldungstext falls table versagt
- i18n@Multilingual wäre geeignet
string
– Leerzeichen-getrennte Liste bevorzugter Sprachcodes- false/nil – Projektsprache oder sonst Englisch
Abhängigkeiten
Keine.
Verwendung
Ausschließlich in Lua-Programmierung.
Internationalisierung
- commons:Data:I18n/Module:JSONutil.tab – Textbausteine
- Fehlermeldungen werden in Benutzer-/Projektsprache gezeigt.
Siehe auch
- jsonDebug@PerfektesChaos – Benutzerskript zur detaillierteren Analyse fataler Fehler