#
# Copyright (c) 2015, 2024, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#

toplevel.decl=\
    package {0};\n\
    \n\
    {1}\n\
    import com.sun.tools.javac.util.JCDiagnostic.Error;\n\
    import com.sun.tools.javac.util.JCDiagnostic.Warning;\n\
    import com.sun.tools.javac.util.JCDiagnostic.LintWarning;\n\
    import com.sun.tools.javac.util.JCDiagnostic.Note;\n\
    import com.sun.tools.javac.util.JCDiagnostic.Fragment;\n\
    import com.sun.tools.javac.code.Lint.LintCategory;\n\
    \n\
    public class {2} '{'\n\
    {3}\n\
    '}'\n

import.decl=\
    import {0};

nested.decl =\
    public static class {0} '{'\n\
    {1}\n\
    '}'

factory.decl.method=\
    /**\n\
    ' '* {5}\n\
    ' '*/\n\
    {0}public static {1} {2}({3}) '{'\n\
    {4}\n\
    '}'

factory.decl.method.arg=\
    arg{0}

factory.decl.method.body=\
    return new {0}({1}, {2}, {3});

factory.decl.method.body.lint=\
    return new {0}({1}, {2}, {3}, {4});

factory.decl.field=\
    /**\n\
    ' '* {4}\n\
    ' '*/\n\
    public static final {0} {1} = new {0}({2}, {3});

factory.decl.field.lint=\
    /**\n\
    ' '* {5}\n\
    ' '*/\n\
    public static final {0} {1} = new {0}({2}, {3}, {4});

wildcards.extends=\
    {0}<? extends {1}>

suppress.warnings=\
  @SuppressWarnings("rawtypes")\n

lint.category=\
  LintCategory.get({0}).get()

