xref: /OpenGrok/opengrok-indexer/src/main/java/org/opengrok/indexer/analysis/verilog/Consts.java (revision 319b1c2ceca3c5c32ff6aa75d13a4b5dcba3d300)
1 /*
2  * CDDL HEADER START
3  *
4  * The contents of this file are subject to the terms of the
5  * Common Development and Distribution License (the "License").
6  * You may not use this file except in compliance with the License.
7  *
8  * See LICENSE.txt included in this distribution for the specific
9  * language governing permissions and limitations under the License.
10  *
11  * When distributing Covered Code, include this CDDL HEADER in each
12  * file and include the License file at LICENSE.txt.
13  * If applicable, add the following below this CDDL HEADER, with the
14  * fields enclosed by brackets "[]" replaced with your own identifying
15  * information: Portions Copyright [yyyy] [name of copyright owner]
16  *
17  * CDDL HEADER END
18  */
19 
20 /*
21  * Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
22  * Copyright (c) 2019, Chris Fraire <cfraire@me.com>.
23  */
24 package org.opengrok.indexer.analysis.verilog;
25 
26 import java.util.HashSet;
27 import java.util.Set;
28 
29 /**
30  * Represents a container for a set of SystemVerilog keywords.
31  */
32 public class Consts {
33 
34     static final Set<String> kwd = new HashSet<>();
35 
36     static {
37         kwd.add("accept_on"); // IEEE 1800-2017
38         kwd.add("alias"); // IEEE 1800-2017
39         kwd.add("always"); // IEEE 1800-2017
40         kwd.add("always_comb"); // IEEE 1800-2017
41         kwd.add("always_ff"); // IEEE 1800-2017
42         kwd.add("always_latch"); // IEEE 1800-2017
43         kwd.add("and"); // IEEE 1800-2017
44         kwd.add("assert"); // IEEE 1800-2017
45         kwd.add("assign"); // IEEE 1800-2017
46         kwd.add("assume"); // IEEE 1800-2017
47         kwd.add("automatic"); // IEEE 1800-2017
48         kwd.add("before"); // IEEE 1800-2017
49         kwd.add("begin"); // IEEE 1800-2017
50         kwd.add("bind"); // IEEE 1800-2017
51         kwd.add("bins"); // IEEE 1800-2017
52         kwd.add("binsof"); // IEEE 1800-2017
53         kwd.add("bit"); // IEEE 1800-2017
54         kwd.add("break"); // IEEE 1800-2017
55         kwd.add("buf"); // IEEE 1800-2017
56         kwd.add("bufif0"); // IEEE 1800-2017
57         kwd.add("bufif1"); // IEEE 1800-2017
58         kwd.add("byte"); // IEEE 1800-2017
59         kwd.add("case"); // IEEE 1800-2017
60         kwd.add("casex"); // IEEE 1800-2017
61         kwd.add("casez"); // IEEE 1800-2017
62         kwd.add("cell"); // IEEE 1800-2017
63         kwd.add("chandle"); // IEEE 1800-2017
64         kwd.add("checker"); // IEEE 1800-2017
65         kwd.add("class"); // IEEE 1800-2017
66         kwd.add("clocking"); // IEEE 1800-2017
67         kwd.add("cmos"); // IEEE 1800-2017
68         kwd.add("config"); // IEEE 1800-2017
69         kwd.add("const"); // IEEE 1800-2017
70         kwd.add("constraint"); // IEEE 1800-2017
71         kwd.add("context"); // IEEE 1800-2017
72         kwd.add("continue"); // IEEE 1800-2017
73         kwd.add("cover"); // IEEE 1800-2017
74         kwd.add("covergroup"); // IEEE 1800-2017
75         kwd.add("coverpoint"); // IEEE 1800-2017
76         kwd.add("cross"); // IEEE 1800-2017
77         kwd.add("deassign"); // IEEE 1800-2017
78         kwd.add("default"); // IEEE 1800-2017
79         kwd.add("defparam"); // IEEE 1800-2017
80         kwd.add("design"); // IEEE 1800-2017
81         kwd.add("disable"); // IEEE 1800-2017
82         kwd.add("dist"); // IEEE 1800-2017
83         kwd.add("do"); // IEEE 1800-2017
84         kwd.add("edge"); // IEEE 1800-2017
85         kwd.add("else"); // IEEE 1800-2017
86         kwd.add("end"); // IEEE 1800-2017
87         kwd.add("endcase"); // IEEE 1800-2017
88         kwd.add("endchecker"); // IEEE 1800-2017
89         kwd.add("endclass"); // IEEE 1800-2017
90         kwd.add("endclocking"); // IEEE 1800-2017
91         kwd.add("endconfig"); // IEEE 1800-2017
92         kwd.add("endfunction"); // IEEE 1800-2017
93         kwd.add("endgenerate"); // IEEE 1800-2017
94         kwd.add("endgroup"); // IEEE 1800-2017
95         kwd.add("endinterface"); // IEEE 1800-2017
96         kwd.add("endmodule"); // IEEE 1800-2017
97         kwd.add("endpackage"); // IEEE 1800-2017
98         kwd.add("endprimitive"); // IEEE 1800-2017
99         kwd.add("endprogram"); // IEEE 1800-2017
100         kwd.add("endproperty"); // IEEE 1800-2017
101         kwd.add("endspecify"); // IEEE 1800-2017
102         kwd.add("endsequence"); // IEEE 1800-2017
103         kwd.add("endtable"); // IEEE 1800-2017
104         kwd.add("endtask"); // IEEE 1800-2017
105         kwd.add("enum"); // IEEE 1800-2017
106         kwd.add("event"); // IEEE 1800-2017
107         kwd.add("eventually"); // IEEE 1800-2017
108         kwd.add("expect"); // IEEE 1800-2017
109         kwd.add("export"); // IEEE 1800-2017
110         kwd.add("extends"); // IEEE 1800-2017
111         kwd.add("extern"); // IEEE 1800-2017
112         kwd.add("final"); // IEEE 1800-2017
113         kwd.add("first_match"); // IEEE 1800-2017
114         kwd.add("for"); // IEEE 1800-2017
115         kwd.add("force"); // IEEE 1800-2017
116         kwd.add("foreach"); // IEEE 1800-2017
117         kwd.add("forever"); // IEEE 1800-2017
118         kwd.add("fork"); // IEEE 1800-2017
119         kwd.add("forkjoin"); // IEEE 1800-2017
120         kwd.add("function"); // IEEE 1800-2017
121         kwd.add("generate"); // IEEE 1800-2017
122         kwd.add("genvar"); // IEEE 1800-2017
123         kwd.add("global"); // IEEE 1800-2017
124         kwd.add("highz0"); // IEEE 1800-2017
125         kwd.add("highz1"); // IEEE 1800-2017
126         kwd.add("if"); // IEEE 1800-2017
127         kwd.add("iff"); // IEEE 1800-2017
128         kwd.add("ifnone"); // IEEE 1800-2017
129         kwd.add("ignore_bins"); // IEEE 1800-2017
130         kwd.add("illegal_bins"); // IEEE 1800-2017
131         kwd.add("implements"); // IEEE 1800-2017
132         kwd.add("implies"); // IEEE 1800-2017
133         kwd.add("import"); // IEEE 1800-2017
134         kwd.add("incdir"); // IEEE 1800-2017
135         kwd.add("include"); // IEEE 1800-2017
136         kwd.add("initial"); // IEEE 1800-2017
137         kwd.add("inout"); // IEEE 1800-2017
138         kwd.add("input"); // IEEE 1800-2017
139         kwd.add("inside"); // IEEE 1800-2017
140         kwd.add("instance"); // IEEE 1800-2017
141         kwd.add("int"); // IEEE 1800-2017
142         kwd.add("integer"); // IEEE 1800-2017
143         kwd.add("interconnect"); // IEEE 1800-2017
144         kwd.add("interface"); // IEEE 1800-2017
145         kwd.add("intersect"); // IEEE 1800-2017
146         kwd.add("join"); // IEEE 1800-2017
147         kwd.add("join_any"); // IEEE 1800-2017
148         kwd.add("join_none"); // IEEE 1800-2017
149         kwd.add("large"); // IEEE 1800-2017
150         kwd.add("let"); // IEEE 1800-2017
151         kwd.add("liblist"); // IEEE 1800-2017
152         kwd.add("library"); // IEEE 1800-2017
153         kwd.add("local"); // IEEE 1800-2017
154         kwd.add("localparam"); // IEEE 1800-2017
155         kwd.add("logic"); // IEEE 1800-2017
156         kwd.add("longint"); // IEEE 1800-2017
157         kwd.add("macromodule"); // IEEE 1800-2017
158         kwd.add("matches"); // IEEE 1800-2017
159         kwd.add("medium"); // IEEE 1800-2017
160         kwd.add("modport"); // IEEE 1800-2017
161         kwd.add("module"); // IEEE 1800-2017
162         kwd.add("nand"); // IEEE 1800-2017
163         kwd.add("negedge"); // IEEE 1800-2017
164         kwd.add("nettype"); // IEEE 1800-2017
165         kwd.add("new"); // IEEE 1800-2017
166         kwd.add("nexttime"); // IEEE 1800-2017
167         kwd.add("nmos"); // IEEE 1800-2017
168         kwd.add("nor"); // IEEE 1800-2017
169         kwd.add("noshowcancelled"); // IEEE 1800-2017
170         kwd.add("not"); // IEEE 1800-2017
171         kwd.add("notif0"); // IEEE 1800-2017
172         kwd.add("notif1"); // IEEE 1800-2017
173         kwd.add("null"); // IEEE 1800-2017
174         kwd.add("or"); // IEEE 1800-2017
175         kwd.add("output"); // IEEE 1800-2017
176         kwd.add("package"); // IEEE 1800-2017
177         kwd.add("packed"); // IEEE 1800-2017
178         kwd.add("parameter"); // IEEE 1800-2017
179         kwd.add("pmos"); // IEEE 1800-2017
180         kwd.add("posedge"); // IEEE 1800-2017
181         kwd.add("primitive"); // IEEE 1800-2017
182         kwd.add("priority"); // IEEE 1800-2017
183         kwd.add("program"); // IEEE 1800-2017
184         kwd.add("property"); // IEEE 1800-2017
185         kwd.add("protected"); // IEEE 1800-2017
186         kwd.add("pull0"); // IEEE 1800-2017
187         kwd.add("pull1"); // IEEE 1800-2017
188         kwd.add("pulldown"); // IEEE 1800-2017
189         kwd.add("pullup"); // IEEE 1800-2017
190         kwd.add("pulsestyle_ondetect"); // IEEE 1800-2017
191         kwd.add("pulsestyle_onevent"); // IEEE 1800-2017
192         kwd.add("pure"); // IEEE 1800-2017
193         kwd.add("rand"); // IEEE 1800-2017
194         kwd.add("randc"); // IEEE 1800-2017
195         kwd.add("randcase"); // IEEE 1800-2017
196         kwd.add("randsequence"); // IEEE 1800-2017
197         kwd.add("rcmos"); // IEEE 1800-2017
198         kwd.add("real"); // IEEE 1800-2017
199         kwd.add("realtime"); // IEEE 1800-2017
200         kwd.add("ref"); // IEEE 1800-2017
201         kwd.add("reg"); // IEEE 1800-2017
202         kwd.add("reject_on"); // IEEE 1800-2017
203         kwd.add("release"); // IEEE 1800-2017
204         kwd.add("repeat"); // IEEE 1800-2017
205         kwd.add("restrict"); // IEEE 1800-2017
206         kwd.add("return"); // IEEE 1800-2017
207         kwd.add("rnmos"); // IEEE 1800-2017
208         kwd.add("rpmos"); // IEEE 1800-2017
209         kwd.add("rtran"); // IEEE 1800-2017
210         kwd.add("rtranif0"); // IEEE 1800-2017
211         kwd.add("rtranif1"); // IEEE 1800-2017
212         kwd.add("s_always"); // IEEE 1800-2017
213         kwd.add("s_eventually"); // IEEE 1800-2017
214         kwd.add("s_nexttime"); // IEEE 1800-2017
215         kwd.add("s_until"); // IEEE 1800-2017
216         kwd.add("s_until_with"); // IEEE 1800-2017
217         kwd.add("scalared"); // IEEE 1800-2017
218         kwd.add("sequence"); // IEEE 1800-2017
219         kwd.add("shortint"); // IEEE 1800-2017
220         kwd.add("shortreal"); // IEEE 1800-2017
221         kwd.add("showcancelled"); // IEEE 1800-2017
222         kwd.add("signed"); // IEEE 1800-2017
223         kwd.add("small"); // IEEE 1800-2017
224         kwd.add("soft"); // IEEE 1800-2017
225         kwd.add("solve"); // IEEE 1800-2017
226         kwd.add("specify"); // IEEE 1800-2017
227         kwd.add("specparam"); // IEEE 1800-2017
228         kwd.add("static"); // IEEE 1800-2017
229         kwd.add("string"); // IEEE 1800-2017
230         kwd.add("strong"); // IEEE 1800-2017
231         kwd.add("strong0"); // IEEE 1800-2017
232         kwd.add("strong1"); // IEEE 1800-2017
233         kwd.add("struct"); // IEEE 1800-2017
234         kwd.add("super"); // IEEE 1800-2017
235         kwd.add("supply0"); // IEEE 1800-2017
236         kwd.add("supply1"); // IEEE 1800-2017
237         kwd.add("sync_accept_on"); // IEEE 1800-2017
238         kwd.add("sync_reject_on"); // IEEE 1800-2017
239         kwd.add("table"); // IEEE 1800-2017
240         kwd.add("tagged"); // IEEE 1800-2017
241         kwd.add("task"); // IEEE 1800-2017
242         kwd.add("this"); // IEEE 1800-2017
243         kwd.add("throughout"); // IEEE 1800-2017
244         kwd.add("time"); // IEEE 1800-2017
245         kwd.add("timeprecision"); // IEEE 1800-2017
246         kwd.add("timeunit"); // IEEE 1800-2017
247         kwd.add("tran"); // IEEE 1800-2017
248         kwd.add("tranif0"); // IEEE 1800-2017
249         kwd.add("tranif1"); // IEEE 1800-2017
250         kwd.add("tri"); // IEEE 1800-2017
251         kwd.add("tri0"); // IEEE 1800-2017
252         kwd.add("tri1"); // IEEE 1800-2017
253         kwd.add("triand"); // IEEE 1800-2017
254         kwd.add("trior"); // IEEE 1800-2017
255         kwd.add("trireg"); // IEEE 1800-2017
256         kwd.add("type"); // IEEE 1800-2017
257         kwd.add("typedef"); // IEEE 1800-2017
258         kwd.add("union"); // IEEE 1800-2017
259         kwd.add("unique"); // IEEE 1800-2017
260         kwd.add("unique0"); // IEEE 1800-2017
261         kwd.add("unsigned"); // IEEE 1800-2017
262         kwd.add("until"); // IEEE 1800-2017
263         kwd.add("until_with"); // IEEE 1800-2017
264         kwd.add("untyped"); // IEEE 1800-2017
265         kwd.add("use"); // IEEE 1800-2017
266         kwd.add("uwire"); // IEEE 1800-2017
267         kwd.add("var"); // IEEE 1800-2017
268         kwd.add("vectored"); // IEEE 1800-2017
269         kwd.add("virtual"); // IEEE 1800-2017
270         kwd.add("void"); // IEEE 1800-2017
271         kwd.add("wait"); // IEEE 1800-2017
272         kwd.add("wait_order"); // IEEE 1800-2017
273         kwd.add("wand"); // IEEE 1800-2017
274         kwd.add("weak"); // IEEE 1800-2017
275         kwd.add("weak0"); // IEEE 1800-2017
276         kwd.add("weak1"); // IEEE 1800-2017
277         kwd.add("while"); // IEEE 1800-2017
278         kwd.add("wildcard"); // IEEE 1800-2017
279         kwd.add("wire"); // IEEE 1800-2017
280         kwd.add("with"); // IEEE 1800-2017
281         kwd.add("within"); // IEEE 1800-2017
282         kwd.add("wor"); // IEEE 1800-2017
283         kwd.add("xnor"); // IEEE 1800-2017
284         kwd.add("xor"); // IEEE 1800-2017
285         kwd.add("`__FILE__"); // IEEE 1800-2017
286         kwd.add("`__LINE__"); // IEEE 1800-2017
287         kwd.add("`begin_keywords"); // IEEE 1800-2017
288         kwd.add("`celldefine"); // IEEE 1800-2017
289         kwd.add("`default_decay_time"); // IEEE 1800-2017
290         kwd.add("`default_nettype"); // IEEE 1800-2017
291         kwd.add("`default_trireg_strength"); // IEEE 1800-2017
292         kwd.add("`define"); // IEEE 1800-2017
293         kwd.add("`delay_mode_distributed"); // IEEE 1800-2017
294         kwd.add("`delay_mode_path"); // IEEE 1800-2017
295         kwd.add("`delay_mode_unit"); // IEEE 1800-2017
296         kwd.add("`delay_mode_zero"); // IEEE 1800-2017
297         kwd.add("`else"); // IEEE 1800-2017
298         kwd.add("`elsif"); // IEEE 1800-2017
299         kwd.add("`end_keywords"); // IEEE 1800-2017
300         kwd.add("`endcelldefine"); // IEEE 1800-2017
301         kwd.add("`endif"); // IEEE 1800-2017
302         kwd.add("`ifdef"); // IEEE 1800-2017
303         kwd.add("`ifndef"); // IEEE 1800-2017
304         kwd.add("`include"); // IEEE 1800-2017
305         kwd.add("`line"); // IEEE 1800-2017
306         kwd.add("`nounconnected_drive"); // IEEE 1800-2017
307         kwd.add("`pragma"); // IEEE 1800-2017
308         kwd.add("`resetall"); // IEEE 1800-2017
309         kwd.add("`timescale"); // IEEE 1800-2017
310         kwd.add("`unconnected_drive"); // IEEE 1800-2017
311         kwd.add("`undef"); // IEEE 1800-2017
312         kwd.add("`undefineall"); // IEEE 1800-2017
313 //        kwd.add("$setup"); // IEEE 1800-2017
314 //        kwd.add("$fullskew"); // IEEE 1800-2017
315 //        kwd.add("$hold"); // IEEE 1800-2017
316 //        kwd.add("$nochange"); // IEEE 1800-2017
317 //        kwd.add("$period"); // IEEE 1800-2017
318 //        kwd.add("$recovery"); // IEEE 1800-2017
319 //        kwd.add("$recrem"); // IEEE 1800-2017
320 //        kwd.add("$removal"); // IEEE 1800-2017
321 //        kwd.add("$setuphold"); // IEEE 1800-2017
322 //        kwd.add("$skew"); // IEEE 1800-2017
323 //        kwd.add("$timeskew"); // IEEE 1800-2017
324 //        kwd.add("$width"); // IEEE 1800-2017
325     }
326 
327     /** Private to enforce static. */
Consts()328     private Consts() {
329     }
330 }
331