Difference between revisions of "Template:Metadata id"
Jump to navigation
Jump to search
(Something strange is afoot, possibly with the {{{1}}} in {{#switch: {{{1|unchanged}}} ... }}, but I'm not sure what it is exactly) |
(Does this change anything?) |
||
Line 3: | Line 3: | ||
{{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}} | {{#vardefine:cur_meta|{{#var:meta_{{#var:meta_current_entity}}}}}} | ||
{{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}} | {{#vardefine:pre_meta|{{#var:meta_pre_{{#var:meta_current_entity}}}}}} | ||
− | {{#switch: {{{1 | + | {{#switch: {{{1}}} |
| added = | | added = | ||
{{change||{{#var:pre_meta}}}} | {{change||{{#var:pre_meta}}}} | ||
Line 10: | Line 10: | ||
{{change|{{#var:cur_meta}}|}} | {{change|{{#var:cur_meta}}|}} | ||
{{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}} | {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}} | ||
− | | | + | | unchanged = |
{{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{change|{{#var:cur_meta}}|{{#var:pre_meta}}}} }} | {{#ifeq: {{#var:cur_meta}}|{{#var:pre_meta}} | {{#var:cur_meta}} | {{change|{{#var:cur_meta}}|{{#var:pre_meta}}}} }} | ||
{{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}} | {{#vardefine:meta_{{#var:meta_current_entity}}|{{#expr:{{#var:cur_meta}}+1}}}} | ||
{{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}} | {{#vardefine:meta_pre_{{#var:meta_current_entity}}|{{#expr:{{#var:pre_meta}}+1}}}} | ||
+ | | #default = | ||
+ | <strong class="error">Invalid parameter to [[Template:Metadata id]] {{{1}}}</strong> | ||
}} | }} | ||
| <!-- Full release mode --> | | <!-- Full release mode --> |
Revision as of 02:55, 3 May 2019
Used to generate incremental entity metadata IDs.
cur_meta
and pre_meta
are local variables, to avoid redundancy. meta_current_entity
is defined elsewhere, and meta_entity
and meta_pre_entity
are accessed via it. Those two values are incremented after this template.
Behavior changes if a meta_prerelease
variable is defined: the template supports an optional parameter which may be set to unchanged
(default), added
, or removed
, which can be used to mark metadata entries that were added or removed in the prerelease.