340N/A/*
340N/A * CDDL HEADER START
340N/A *
340N/A * The contents of this file are subject to the terms of the
340N/A * Common Development and Distribution License (the "License").
340N/A * You may not use this file except in compliance with the License.
340N/A *
340N/A * See LICENSE.txt included in this distribution for the specific
340N/A * language governing permissions and limitations under the License.
340N/A *
340N/A * When distributing Covered Code, include this CDDL HEADER in each
340N/A * file and include the License file at LICENSE.txt.
340N/A * If applicable, add the following below this CDDL HEADER, with the
340N/A * fields enclosed by brackets "[]" replaced with your own identifying
340N/A * information: Portions Copyright [yyyy] [name of copyright owner]
340N/A *
340N/A * CDDL HEADER END
340N/A */
340N/A
340N/A/*
1054N/A * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
340N/A * Use is subject to license terms.
340N/A */
340N/Apackage org.opensolaris.opengrok.analysis.fortran;
340N/A
464N/Aimport java.util.HashSet;
340N/Aimport java.util.Set;
340N/A
340N/A/**
340N/A * Holds static hash set containing the Fortran keywords.
340N/A * The list is based upon the draft available from http://j3-fortran.org/
340N/A */
340N/Apublic class Consts {
340N/A
340N/A public static final Set<String> kwd = new HashSet<String>();
340N/A
340N/A static {
340N/A // multi-word keywords, such as "DOUBLE PRECISION", etc. are for
340N/A // documentation only (?impossible to have LALR(1) parser for
340N/A // fortran?)
340N/A kwd.add("abort");
340N/A kwd.add("abs");
520N/A kwd.add("access");
340N/A kwd.add("achar");
340N/A kwd.add("acos");
340N/A kwd.add("acosh");
340N/A kwd.add("addop");
340N/A kwd.add("adjustl");
340N/A kwd.add("adjustr");
340N/A kwd.add("aimag");
340N/A kwd.add("aint");
340N/A kwd.add("alarm");
340N/A kwd.add("all");
1327N/A kwd.add("allocatable");
340N/A kwd.add("allocate");
1238N/A kwd.add("allocated");
1238N/A kwd.add("and");
1238N/A kwd.add("anint");
1238N/A kwd.add("any");
370N/A kwd.add("asin");
340N/A kwd.add("asinh");
340N/A kwd.add("associated");
340N/A kwd.add("atan");
340N/A kwd.add("atan2");
340N/A kwd.add("atanh");
340N/A kwd.add("backspace");
368N/A kwd.add("besj0");
368N/A kwd.add("besj1");
340N/A kwd.add("besjn");
456N/A kwd.add("besy0");
1238N/A kwd.add("besy1");
340N/A kwd.add("besyn");
340N/A kwd.add("bit_size");
340N/A kwd.add("block");
340N/A kwd.add("break");
340N/A kwd.add("btest");
340N/A kwd.add("byte");
340N/A kwd.add("c_associated");
340N/A kwd.add("c_f_pointer");
340N/A kwd.add("c_f_procpointer");
340N/A kwd.add("c_funloc");
340N/A kwd.add("c_loc");
1463N/A kwd.add("call");
1463N/A kwd.add("case");
1463N/A kwd.add("ceiling");
340N/A kwd.add("char");
591N/A kwd.add("character");
340N/A kwd.add("chdir");
340N/A kwd.add("chmod");
340N/A kwd.add("close");
340N/A kwd.add("cmplx");
340N/A kwd.add("command_argument_count");
340N/A kwd.add("common");
340N/A kwd.add("complex");
1463N/A kwd.add("complex");
1463N/A kwd.add("conjg");
1463N/A kwd.add("continue");
1054N/A kwd.add("cos");
340N/A kwd.add("cosh");
340N/A kwd.add("count");
340N/A kwd.add("cpu_time");
340N/A kwd.add("cshift");
1463N/A kwd.add("ctime");
1463N/A kwd.add("cycle");
1463N/A kwd.add("data");
1054N/A kwd.add("date_and_time");
340N/A kwd.add("dble");
456N/A kwd.add("dcmplx");
340N/A kwd.add("deallocate");
340N/A kwd.add("dfloat");
1463N/A kwd.add("digits");
1463N/A kwd.add("dim");
1463N/A kwd.add("dimension");
1054N/A kwd.add("do");
340N/A kwd.add("dot_product");
456N/A kwd.add("double");
340N/A kwd.add("dprod");
340N/A kwd.add("dreal");
1463N/A kwd.add("dtime");
1463N/A kwd.add("elemental");
1463N/A kwd.add("else");
1054N/A kwd.add("elseif");
340N/A kwd.add("end");
456N/A kwd.add("enddo");
340N/A kwd.add("endfile");
340N/A kwd.add("endif");
1463N/A kwd.add("eol");
1463N/A kwd.add("eoshift");
1463N/A kwd.add("epsilon");
1054N/A kwd.add("eq");
340N/A kwd.add("equivalence");
340N/A kwd.add("erf");
340N/A kwd.add("erfc");
340N/A kwd.add("etime");
340N/A kwd.add("exit");
340N/A kwd.add("exit");
340N/A kwd.add("exp");
520N/A kwd.add("exponent");
340N/A kwd.add("external");
340N/A kwd.add("false");
340N/A kwd.add("fdate");
340N/A kwd.add("fget");
340N/A kwd.add("fgetc");
340N/A kwd.add("float");
1327N/A kwd.add("floor");
340N/A kwd.add("flush");
340N/A kwd.add("fnum");
520N/A kwd.add("format");
520N/A kwd.add("fput");
520N/A kwd.add("fputc");
520N/A kwd.add("fraction");
520N/A kwd.add("free");
464N/A kwd.add("frequency");
1062N/A kwd.add("fseek");
1463N/A kwd.add("fstat");
340N/A kwd.add("ftell");
340N/A kwd.add("function");
340N/A kwd.add("function");
340N/A kwd.add("gamma");
340N/A kwd.add("ge");
520N/A kwd.add("gerror");
639N/A kwd.add("get_command");
460N/A kwd.add("get_command_argument");
460N/A kwd.add("get_environment_variable");
1463N/A kwd.add("getarg");
340N/A kwd.add("getcwd");
340N/A kwd.add("getenv");
340N/A kwd.add("getgid");
340N/A kwd.add("getlog");
340N/A kwd.add("getpid");
1327N/A kwd.add("getuid");
340N/A kwd.add("gmtime");
340N/A kwd.add("goto");
340N/A kwd.add("gt");
1327N/A kwd.add("hostnm");
1327N/A kwd.add("huge");
340N/A kwd.add("iachar");
340N/A kwd.add("iand");
340N/A kwd.add("iargc");
340N/A kwd.add("ibclr");
340N/A kwd.add("ibits");
340N/A kwd.add("ibset");
340N/A kwd.add("ichar");
1054N/A kwd.add("idate");
340N/A kwd.add("identifier");
340N/A kwd.add("ieor");
340N/A kwd.add("ierrno");
340N/A kwd.add("if");
340N/A kwd.add("implicit");
340N/A kwd.add("include");
340N/A kwd.add("index");
1054N/A kwd.add("inquire");
340N/A kwd.add("int");
340N/A kwd.add("int2");
340N/A kwd.add("int8");
340N/A kwd.add("integer");
340N/A kwd.add("ior");
340N/A kwd.add("irand");
340N/A kwd.add("is_iostat_end");
340N/A kwd.add("is_iostat_eor");
1054N/A kwd.add("isatty");
340N/A kwd.add("ishft");
340N/A kwd.add("ishftc");
340N/A kwd.add("isnan");
522N/A kwd.add("itime");
522N/A kwd.add("kill");
522N/A kwd.add("kind");
520N/A kwd.add("lbound");
520N/A kwd.add("le");
340N/A kwd.add("len");
1327N/A kwd.add("len_trim");
340N/A kwd.add("lgamma");
340N/A kwd.add("lge");
340N/A kwd.add("lge");
340N/A kwd.add("lgt");
1190N/A kwd.add("lgt");
340N/A kwd.add("link");
340N/A kwd.add("lle");
340N/A kwd.add("lle");
340N/A kwd.add("llt");
1054N/A kwd.add("llt");
340N/A kwd.add("lnblnk");
340N/A kwd.add("loc");
340N/A kwd.add("log");
340N/A kwd.add("log10");
340N/A kwd.add("logical");
340N/A kwd.add("logical");
340N/A kwd.add("long");
340N/A kwd.add("lshift");
340N/A kwd.add("lstat");
340N/A kwd.add("lt");
340N/A kwd.add("ltime");
340N/A kwd.add("malloc");
1185N/A kwd.add("matmul");
340N/A kwd.add("max");
340N/A kwd.add("maxexponent");
340N/A kwd.add("maxloc");
340N/A kwd.add("maxval");
340N/A kwd.add("mclock");
340N/A kwd.add("mclock8");
340N/A kwd.add("merge");
1327N/A kwd.add("min");
340N/A kwd.add("minexponent");
340N/A kwd.add("minloc");
340N/A kwd.add("minval");
1327N/A kwd.add("mod");
1327N/A kwd.add("modulo");
1327N/A kwd.add("move_alloc");
340N/A kwd.add("mulop");
340N/A kwd.add("mvbits");
340N/A kwd.add("ne");
340N/A kwd.add("nearest");
340N/A kwd.add("new_line");
1463N/A kwd.add("nint");
1463N/A kwd.add("none");
1463N/A kwd.add("not");
1054N/A kwd.add("null");
1054N/A kwd.add("nullify");
1327N/A kwd.add("open");
1054N/A kwd.add("or");
1054N/A kwd.add("pack");
1463N/A kwd.add("parameter");
1463N/A kwd.add("perror");
1463N/A kwd.add("pointer");
1054N/A kwd.add("precision");
1054N/A kwd.add("present");
1327N/A kwd.add("print");
1054N/A kwd.add("product");
1054N/A kwd.add("program");
1463N/A kwd.add("punch");
1463N/A kwd.add("pure");
1463N/A kwd.add("qstring");
1054N/A kwd.add("radix");
1054N/A kwd.add("ran");
1327N/A kwd.add("rand");
1054N/A kwd.add("random_number");
1054N/A kwd.add("random_seed");
1054N/A kwd.add("range");
1054N/A kwd.add("read");
1463N/A kwd.add("real");
1463N/A kwd.add("real");
1463N/A kwd.add("relop");
1054N/A kwd.add("rename");
340N/A kwd.add("repeat");
1327N/A kwd.add("reshape");
340N/A kwd.add("return");
340N/A kwd.add("rewind");
340N/A kwd.add("rrspacing");
1463N/A kwd.add("rshift");
1463N/A kwd.add("save");
1463N/A kwd.add("scale");
1054N/A kwd.add("scan");
340N/A kwd.add("secnds");
1327N/A kwd.add("second");
340N/A kwd.add("select");
340N/A kwd.add("selected_int_kind");
340N/A kwd.add("selected_real_kind");
340N/A kwd.add("set_exponent");
340N/A kwd.add("shape");
340N/A kwd.add("sign");
340N/A kwd.add("signal");
340N/A kwd.add("sin");
340N/A kwd.add("sinh");
340N/A kwd.add("size");
340N/A kwd.add("sizeof");
340N/A kwd.add("sleep");
340N/A kwd.add("sngl");
340N/A kwd.add("spacing");
340N/A kwd.add("spread");
340N/A kwd.add("sqrt");
340N/A kwd.add("srand");
340N/A kwd.add("stat");
340N/A kwd.add("stop");
1463N/A kwd.add("subroutine");
1463N/A kwd.add("sum");
1463N/A kwd.add("symlnk");
1054N/A kwd.add("system");
340N/A kwd.add("system_clock");
340N/A kwd.add("tan");
340N/A kwd.add("tanh");
340N/A kwd.add("then");
1463N/A kwd.add("time");
1463N/A kwd.add("time8");
1463N/A kwd.add("tiny");
1054N/A kwd.add("transfer");
340N/A kwd.add("transpose");
340N/A kwd.add("trim");
340N/A kwd.add("true");
340N/A kwd.add("ttynam");
1463N/A kwd.add("ubound");
1463N/A kwd.add("umask");
1463N/A kwd.add("unary");
1054N/A kwd.add("unlink");
340N/A kwd.add("unpack");
340N/A kwd.add("verify");
340N/A kwd.add("volatile");
340N/A kwd.add("where");
1463N/A kwd.add("while");
1463N/A kwd.add("write");
1463N/A kwd.add("xor");
1054N/A }
340N/A}
340N/A