Vorlage:boolornot
Erscheinungsbild
[Vorlagenprogrammierung] Logische Oder-Verknüpfung von zwei Werten, deren zweiter negiert ist; ergibt einen nicht-leeren String (
1, also „wahr“), wenn entweder der erste Parameter nicht leer oder der zweite Parameter leer ist oder beides zutrifft
<templatestyles src="TOC nonum/styles.css"></templatestyles>
⧼templatedata-doc-params⧽
| ⧼templatedata-doc-param-name⧽ | ⧼templatedata-doc-param-desc⧽ | ⧼templatedata-doc-param-type⧽ | ⧼templatedata-doc-param-status⧽ | |
|---|---|---|---|---|
| 1. Wert | 1 | 1. Wert zur Verknüpfung | ⧼templatedata-doc-param-type-boolean⧽ | ⧼templatedata-doc-param-status-required⧽ |
| 2. Wert | 2 | 2. Wert zur Verknüpfung | ⧼templatedata-doc-param-type-boolean⧽ | ⧼templatedata-doc-param-status-required⧽ |
Kopiervorlage
<syntaxhighlight lang="wikitext" copy> 1 </syntaxhighlight>
Hinweise
Beide Parameter müssen erst ausgewertet werden, bevor sie verknüpft werden können. Das ist ein Problem, wenn die Ermittlung aufwändig ist („teuer“ oder sonst performancekritisch). Besser ist dann:
<syntaxhighlight lang="wikitext" copy>
<Aktion>
</syntaxhighlight>
Die bestimmenden Kriterien „A-Vorlage“ und „B-Vorlage“ sollten so angeordnet werden, dass die am einfachsten auszuwertende zuerst analysiert wird. Liefert die erste „wahr“, so ist der gesamte Ausdruck wahr und eine teure B-Vorlage muss nicht mehr eingebunden werden. Hier werden noch die Werte 0, - oder false als „falsch“=leer gewertet.
Wahrheitstabelle
| Eingabe | Ausgabe |
|---|---|
| {{boolornot| | }} | 1 |
| {{boolornot| |1}} | |
| {{boolornot|1| }} | 1 |
| {{boolornot|1|1}} | 1 |
Beispiele
{{#if: {{boolornot|| }}| Ja | Nein}}ergibt
Ja
{{#if: {{boolornot|xxx| }}| Ja | Nein}}ergibt
Ja
{{#if: {{boolornot| |xxx}}| Ja | Nein}}ergibt
Nein
{{#if: {{boolornot|xxx|xxx}}| Ja | Nein}}ergibt
Ja