# Copyright (c) 2015-2016 The Khronos Group Inc. # Copyright notice at https://www.khronos.org/registry/speccopyright.html # # The 'normative' macros below (can: through shouldnot:) serve mostly # to tag that those terms have been validated against their normative # definitions. They ignore any arguments, and don't yet do anything # but expand to their names. # # The remaining macros tag API terms (f = function, s = struct, e = enum, # p = parameter, t = other type) and expand in various ways determined by # the name following the = in the macro definition: # # 'link' macros format as code and create an xref/link to the target # 'code' macros format as code, but do not link # 'strong' macros format as , and do not link # 'param' macros format as , and do not link [macros] (?su)(?Pcan):(?P\w*)=normative (?su)(?Pcannot):(?P\w*)=normative (?su)(?Pmay):(?P\w*)=normative (?su)(?Pmaynot):(?P\w*)=maynot (?su)(?Pmust):(?P\w*)=normative (?su)(?Pmustnot):(?P\w*)=mustnot (?su)(?Poptional):(?P\w*)=normative (?su)(?Poptionally):(?P\w*)=normative (?su)(?Precommend):(?P\w*)=normative (?su)(?Prequired):(?P\w*)=normative (?su)(?Pshould):(?P\w*)=normative (?su)(?Pshouldnot):(?P\w*)=shouldnot (?su)(?Pflink):(?P\w+)=link (?su)(?Pfname):(?P\w+)=strong (?su)(?Pftext):(?P[\w*]+(\.[\w*]+)*)=strong (?su)(?Psname):(?P\w+)=code (?su)(?Pslink):(?P\w+)=link (?su)(?Pstext):(?P[\w*]+(\.[\w*]+)*)=code (?su)(?Pename):(?P\w+)=code (?su)(?Pelink):(?P\w+)=link (?su)(?Petext):(?P[\w*]+(\.[\w*]+)*)=code (?su)(?Ppname):(?P(\w[\w.]*)*\w+)=param (?su)(?Pptext):(?P[\w*]+(\.[\w*]+)*)=param (?su)(?Ptlink):(?P\w+)=link (?su)(?Ptname):(?P\w+)=strong (?su)(?Pbasetype):(?P\w+)=code (?su)(?Pcode):(?P\w+)=strong [normative-inlinemacro] ifdef::basebackend-docbook[] {name} endif::basebackend-docbook[] ifdef::basebackend-html[] {name} endif::basebackend-html[] [maynot-inlinemacro] ifdef::basebackend-docbook[] may not endif::basebackend-docbook[] ifdef::basebackend-html[] may not endif::basebackend-html[] [mustnot-inlinemacro] ifdef::basebackend-docbook[] must not endif::basebackend-docbook[] ifdef::basebackend-html[] must not endif::basebackend-html[] [shouldnot-inlinemacro] ifdef::basebackend-docbook[] should not endif::basebackend-docbook[] ifdef::basebackend-html[] should not endif::basebackend-html[] [link-inlinemacro] ifdef::basebackend-docbook[] {target} endif::basebackend-docbook[] ifdef::basebackend-html[] {target} endif::basebackend-html[] [code-inlinemacro] ifdef::basebackend-docbook[] {target} endif::basebackend-docbook[] ifdef::basebackend-html[] {target} endif::basebackend-html[] [strong-inlinemacro] ifdef::basebackend-docbook[] {target} endif::basebackend-docbook[] ifdef::basebackend-html[] {target} endif::basebackend-html[] [param-inlinemacro] ifdef::basebackend-docbook[] {target} endif::basebackend-docbook[] ifdef::basebackend-html[] {target} endif::basebackend-html[]