xref: /aosp_15_r20/external/doclava/res/assets/templates-sdk/macros_override.cs (revision feeed43c7c55e85932c547a3cefc559df175227c)
1*feeed43cSAndroid Build Coastguard Worker <?cs # Create a comma separated list of annotations on obj that were in showAnnotations in Doclava ?>
2*feeed43cSAndroid Build Coastguard Worker <?cs # pre is an HTML string to start the list, post is an HTML string to close the list ?>
3*feeed43cSAndroid Build Coastguard Worker <?cs # for example call:show_annotations_list(cl, "<td>Annotations: ", "</td>") ?>
4*feeed43cSAndroid Build Coastguard Worker <?cs # if obj has nothing on obj.showAnnotations, nothing will be output ?>
5*feeed43cSAndroid Build Coastguard Worker <?cs def:show_annotations_list(obj) ?>
6*feeed43cSAndroid Build Coastguard Worker     <?cs each:anno = obj.showAnnotations ?>
7*feeed43cSAndroid Build Coastguard Worker       <?cs if:first(anno) ?>
8*feeed43cSAndroid Build Coastguard Worker         <span class='annotation-message'>
9*feeed43cSAndroid Build Coastguard Worker           Included in documentation by the annotations:
10*feeed43cSAndroid Build Coastguard Worker       <?cs /if ?>
11*feeed43cSAndroid Build Coastguard Worker       @<?cs var:anno.type.label ?>
12*feeed43cSAndroid Build Coastguard Worker       <?cs if:last(anno) == 0 ?>
13*feeed43cSAndroid Build Coastguard Worker         , &nbsp;
14*feeed43cSAndroid Build Coastguard Worker       <?cs /if ?>
15*feeed43cSAndroid Build Coastguard Worker       <?cs if:last(anno)?>
16*feeed43cSAndroid Build Coastguard Worker         </span>
17*feeed43cSAndroid Build Coastguard Worker       <?cs /if ?>
18*feeed43cSAndroid Build Coastguard Worker     <?cs /each ?>
19*feeed43cSAndroid Build Coastguard Worker <?cs /def ?>
20*feeed43cSAndroid Build Coastguard Worker 
21*feeed43cSAndroid Build Coastguard Worker <?cs # Override default class_link_table to display annotations ?>
22*feeed43cSAndroid Build Coastguard Worker <?cs def:class_link_table(classes) ?>
23*feeed43cSAndroid Build Coastguard Worker   <?cs set:count = #1 ?>
24*feeed43cSAndroid Build Coastguard Worker   <table class="jd-sumtable-expando">
25*feeed43cSAndroid Build Coastguard Worker     <?cs each:cl=classes ?>
26*feeed43cSAndroid Build Coastguard Worker       <tr <?cs
27*feeed43cSAndroid Build Coastguard Worker           if:cl.type.since
28*feeed43cSAndroid Build Coastguard Worker             ?>data-version-added="<?cs var:cl.type.since ?>"<?cs
29*feeed43cSAndroid Build Coastguard Worker           /if ?><?cs
30*feeed43cSAndroid Build Coastguard Worker           if:cl.type.deprecatedsince
31*feeed43cSAndroid Build Coastguard Worker             ?> data-version-deprecated="<?cs var:cl.type.deprecatedsince ?>"<?cs
32*feeed43cSAndroid Build Coastguard Worker           /if ?> >
33*feeed43cSAndroid Build Coastguard Worker         <td class="jd-linkcol"><?cs call:type_link(cl.type) ?></td>
34*feeed43cSAndroid Build Coastguard Worker         <td class="jd-descrcol" width="100%">
35*feeed43cSAndroid Build Coastguard Worker           <?cs call:short_descr(cl) ?>&nbsp;
36*feeed43cSAndroid Build Coastguard Worker           <?cs call:show_annotations_list(cl) ?>
37*feeed43cSAndroid Build Coastguard Worker         </td>
38*feeed43cSAndroid Build Coastguard Worker       </tr>
39*feeed43cSAndroid Build Coastguard Worker       <?cs set:count = count + #1 ?>
40*feeed43cSAndroid Build Coastguard Worker     <?cs /each ?>
41*feeed43cSAndroid Build Coastguard Worker   </table>
42*feeed43cSAndroid Build Coastguard Worker <?cs /def ?>
43*feeed43cSAndroid Build Coastguard Worker 
44*feeed43cSAndroid Build Coastguard Worker <?cs
45*feeed43cSAndroid Build Coastguard Worker # Prints a comma separated list of parameters with optional line breaks
46*feeed43cSAndroid Build Coastguard Worker ?><?cs
47*feeed43cSAndroid Build Coastguard Worker def:parameter_list(params, linebreaks) ?><?cs
48*feeed43cSAndroid Build Coastguard Worker   each:param = params ?><?cs
49*feeed43cSAndroid Build Coastguard Worker       call:simple_type_link(param.type)?> <?cs
50*feeed43cSAndroid Build Coastguard Worker       var:param.name ?><?cs
51*feeed43cSAndroid Build Coastguard Worker       if: name(param)!=subcount(params)-1
52*feeed43cSAndroid Build Coastguard Worker         ?>, <?cs if:linebreaks
53*feeed43cSAndroid Build Coastguard Worker ?>
54*feeed43cSAndroid Build Coastguard Worker                 <?cs /if ?><?cs
55*feeed43cSAndroid Build Coastguard Worker       /if ?><?cs
56*feeed43cSAndroid Build Coastguard Worker   /each ?><?cs
57*feeed43cSAndroid Build Coastguard Worker /def ?><?cs
58*feeed43cSAndroid Build Coastguard Worker 
59*feeed43cSAndroid Build Coastguard Worker # Print output for aux tags that are not "standard" javadoc tags ?><?cs
60*feeed43cSAndroid Build Coastguard Worker def:aux_tag_list(tags) ?><?cs
61*feeed43cSAndroid Build Coastguard Worker   each:tag = tags ?><p><?cs
62*feeed43cSAndroid Build Coastguard Worker       if:tag.kind == "@memberDoc" ?><?cs call:tag_list(tag.commentTags) ?><?cs
63*feeed43cSAndroid Build Coastguard Worker       elif:tag.kind == "@paramDoc" ?><?cs call:tag_list(tag.commentTags) ?><?cs
64*feeed43cSAndroid Build Coastguard Worker       elif:tag.kind == "@returnDoc" ?><?cs call:tag_list(tag.commentTags) ?><?cs
65*feeed43cSAndroid Build Coastguard Worker       elif:tag.kind == "@range" ?><?cs call:dump_range(tag) ?><?cs
66*feeed43cSAndroid Build Coastguard Worker       elif:tag.kind == "@intDef" ?><?cs call:dump_int_def(tag) ?><?cs
67*feeed43cSAndroid Build Coastguard Worker       elif:tag.kind == "@stringDef" ?><?cs call:dump_string_def(tag) ?><?cs
68*feeed43cSAndroid Build Coastguard Worker       elif:tag.kind == "@permission" ?><?cs call:dump_permission(tag) ?><?cs
69*feeed43cSAndroid Build Coastguard Worker       elif:tag.kind == "@service" ?><?cs call:dump_service(tag) ?><?cs
70*feeed43cSAndroid Build Coastguard Worker       elif:tag.kind == "@feature" ?><?cs call:dump_feature(tag) ?><?cs
71*feeed43cSAndroid Build Coastguard Worker       elif:tag.kind == "@column" ?><?cs call:dump_column(tag) ?><?cs
72*feeed43cSAndroid Build Coastguard Worker       /if ?><?cs
73*feeed43cSAndroid Build Coastguard Worker   /each ?></p><?cs
74*feeed43cSAndroid Build Coastguard Worker /def ?><?cs
75*feeed43cSAndroid Build Coastguard Worker 
76*feeed43cSAndroid Build Coastguard Worker # Print output for @range tags ?><?cs
77*feeed43cSAndroid Build Coastguard Worker def:dump_range(tag) ?><?cs
78*feeed43cSAndroid Build Coastguard Worker   if:tag.from && tag.to ?>Value is between <?cs var:tag.from ?> and <?cs var:tag.to ?> inclusive.<?cs
79*feeed43cSAndroid Build Coastguard Worker   elif:tag.from ?>Value is <?cs var:tag.from ?> or greater.<?cs
80*feeed43cSAndroid Build Coastguard Worker   elif:tag.to ?>Value is <?cs var:tag.to ?> or less.<?cs
81*feeed43cSAndroid Build Coastguard Worker   /if ?><?cs
82*feeed43cSAndroid Build Coastguard Worker /def ?><?cs
83*feeed43cSAndroid Build Coastguard Worker 
84*feeed43cSAndroid Build Coastguard Worker # Print output for @intDef tags ?><?cs
85*feeed43cSAndroid Build Coastguard Worker def:dump_int_def(tag) ?><?cs
86*feeed43cSAndroid Build Coastguard Worker   if:tag.flag ?><?cs
87*feeed43cSAndroid Build Coastguard Worker     if:subcount(tag.values) > 1 ?>Value is either <code>0</code> or combination of <?cs
88*feeed43cSAndroid Build Coastguard Worker     else ?>Value is either <code>0</code> or <?cs
89*feeed43cSAndroid Build Coastguard Worker     /if ?><?cs
90*feeed43cSAndroid Build Coastguard Worker   else ?>Value is <?cs
91*feeed43cSAndroid Build Coastguard Worker   /if ?><?cs
92*feeed43cSAndroid Build Coastguard Worker   loop:i = #0, subcount(tag.values), #1 ?><?cs
93*feeed43cSAndroid Build Coastguard Worker     with:val = tag.values[i] ?><?cs
94*feeed43cSAndroid Build Coastguard Worker       call:tag_list(val.commentTags) ?><?cs
95*feeed43cSAndroid Build Coastguard Worker       if i == subcount(tag.values) - 2 ?> or <?cs
96*feeed43cSAndroid Build Coastguard Worker       elif:i < subcount(tag.values) - 2 ?>, <?cs
97*feeed43cSAndroid Build Coastguard Worker       /if ?><?cs
98*feeed43cSAndroid Build Coastguard Worker     /with ?><?cs
99*feeed43cSAndroid Build Coastguard Worker   /loop ?>.<?cs
100*feeed43cSAndroid Build Coastguard Worker /def ?><?cs
101*feeed43cSAndroid Build Coastguard Worker 
102*feeed43cSAndroid Build Coastguard Worker # Print output for @stringDef tags ?><?cs
103*feeed43cSAndroid Build Coastguard Worker def:dump_string_def(tag) ?>Value is <?cs
104*feeed43cSAndroid Build Coastguard Worker   loop:i = #0, subcount(tag.values), #1 ?><?cs
105*feeed43cSAndroid Build Coastguard Worker     with:val = tag.values[i] ?><?cs
106*feeed43cSAndroid Build Coastguard Worker       call:tag_list(val.commentTags) ?><?cs
107*feeed43cSAndroid Build Coastguard Worker       if i == subcount(tag.values) - 2 ?> or <?cs
108*feeed43cSAndroid Build Coastguard Worker       elif:i < subcount(tag.values) - 2 ?>, <?cs
109*feeed43cSAndroid Build Coastguard Worker       /if ?><?cs
110*feeed43cSAndroid Build Coastguard Worker     /with ?><?cs
111*feeed43cSAndroid Build Coastguard Worker   /loop ?>.<?cs
112*feeed43cSAndroid Build Coastguard Worker /def ?><?cs
113*feeed43cSAndroid Build Coastguard Worker 
114*feeed43cSAndroid Build Coastguard Worker # Print output for @permission tags ?><?cs
115*feeed43cSAndroid Build Coastguard Worker def:dump_permission(tag) ?>Requires the <?cs
116*feeed43cSAndroid Build Coastguard Worker   loop:i = #0, subcount(tag.values), #1 ?><?cs
117*feeed43cSAndroid Build Coastguard Worker     with:val = tag.values[i] ?><?cs
118*feeed43cSAndroid Build Coastguard Worker       call:tag_list(val.commentTags) ?><?cs
119*feeed43cSAndroid Build Coastguard Worker       if i == subcount(tag.values) - 2 ?><?cs
120*feeed43cSAndroid Build Coastguard Worker         if tag.any ?> or <?cs
121*feeed43cSAndroid Build Coastguard Worker         else ?> and <?cs
122*feeed43cSAndroid Build Coastguard Worker         /if ?><?cs
123*feeed43cSAndroid Build Coastguard Worker       elif:i < subcount(tag.values) - 2 ?>, <?cs
124*feeed43cSAndroid Build Coastguard Worker       /if ?><?cs
125*feeed43cSAndroid Build Coastguard Worker     /with ?><?cs
126*feeed43cSAndroid Build Coastguard Worker   /loop ?><?cs
127*feeed43cSAndroid Build Coastguard Worker   if subcount(tag.values) > 1 ?> permissions.<?cs
128*feeed43cSAndroid Build Coastguard Worker   else ?> permission.<?cs
129*feeed43cSAndroid Build Coastguard Worker   /if ?><?cs
130*feeed43cSAndroid Build Coastguard Worker /def ?><?cs
131*feeed43cSAndroid Build Coastguard Worker 
132*feeed43cSAndroid Build Coastguard Worker # Print output for @service tags ?><?cs
133*feeed43cSAndroid Build Coastguard Worker def:dump_service(tag) ?>Instances of this class must be obtained using <?cs
134*feeed43cSAndroid Build Coastguard Worker   loop:i = #0, subcount(tag.values) - 1, #2 ?><?cs
135*feeed43cSAndroid Build Coastguard Worker     call:tag_list(tag.values[i].commentTags) ?> with the argument <?cs
136*feeed43cSAndroid Build Coastguard Worker     call:tag_list(tag.values[i+1].commentTags) ?><?cs
137*feeed43cSAndroid Build Coastguard Worker     if i < subcount(tag.values) - 2 ?> or <?cs
138*feeed43cSAndroid Build Coastguard Worker     /if ?><?cs
139*feeed43cSAndroid Build Coastguard Worker   /loop ?>.<?cs
140*feeed43cSAndroid Build Coastguard Worker /def ?><?cs
141*feeed43cSAndroid Build Coastguard Worker 
142*feeed43cSAndroid Build Coastguard Worker # Print output for @feature tags ?><?cs
143*feeed43cSAndroid Build Coastguard Worker def:dump_feature(tag) ?>Requires the <?cs
144*feeed43cSAndroid Build Coastguard Worker   call:tag_list(tag.values[0].commentTags) ?> feature which can be detected using <?cs
145*feeed43cSAndroid Build Coastguard Worker   call:tag_list(tag.values[1].commentTags) ?>.<?cs
146*feeed43cSAndroid Build Coastguard Worker /def ?>
147*feeed43cSAndroid Build Coastguard Worker 
148*feeed43cSAndroid Build Coastguard Worker # Print output for @column tags ?><?cs
149*feeed43cSAndroid Build Coastguard Worker def:dump_column(tag) ?>This constant represents a column name that can be used with a <?cs
150*feeed43cSAndroid Build Coastguard Worker   call:tag_list(tag.values[0].commentTags) ?> through a <?cs
151*feeed43cSAndroid Build Coastguard Worker   call:tag_list(tag.values[1].commentTags) ?> or <?cs
152*feeed43cSAndroid Build Coastguard Worker   call:tag_list(tag.values[2].commentTags) ?> object. The values stored in this column are <?cs
153*feeed43cSAndroid Build Coastguard Worker   call:tag_list(tag.values[3].commentTags) ?><?cs
154*feeed43cSAndroid Build Coastguard Worker   if tag.readOnly ?>, and are read-only and cannot be mutated<?cs
155*feeed43cSAndroid Build Coastguard Worker   else ?><?cs
156*feeed43cSAndroid Build Coastguard Worker   /if ?>.<?cs
157*feeed43cSAndroid Build Coastguard Worker /def ?>
158