b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony/*
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * CDDL HEADER START
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony *
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * The contents of this file are subject to the terms of the
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * Common Development and Distribution License (the "License").
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * You may not use this file except in compliance with the License.
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony *
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * See LICENSE.txt included in this distribution for the specific
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * language governing permissions and limitations under the License.
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony *
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * When distributing Covered Code, include this CDDL HEADER in each
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * file and include the License file at LICENSE.txt.
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * If applicable, add the following below this CDDL HEADER, with the
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * fields enclosed by brackets "[]" replaced with your own identifying
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * information: Portions Copyright [yyyy] [name of copyright owner]
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony *
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony * CDDL HEADER END
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony */
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony/*
c53e2d6fe69297f2c56a8ed835182276bc0b8ec5Alex Anthony * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony */
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonypackage org.opensolaris.opengrok.analysis.pascal;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonyimport java.io.IOException;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonyimport java.io.Reader;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonyimport java.io.Writer;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonyimport org.opensolaris.opengrok.analysis.Definitions;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonyimport org.opensolaris.opengrok.analysis.FileAnalyzer;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonyimport org.opensolaris.opengrok.analysis.FileAnalyzer.Genre;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonyimport org.opensolaris.opengrok.analysis.FileAnalyzerFactory;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonyimport org.opensolaris.opengrok.configuration.Project;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonyimport org.opensolaris.opengrok.history.Annotation;
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony/**
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony *
c53e2d6fe69297f2c56a8ed835182276bc0b8ec5Alex Anthony * @author Alex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony */
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthonypublic class PascalAnalyzerFactory extends FileAnalyzerFactory {
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony private static final String name = "Pascal";
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony private static final String[] SUFFIXES = {
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony "PAS"
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony };
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony public PascalAnalyzerFactory() {
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony super(null, null, SUFFIXES, null, null, "text/plain", Genre.PLAIN, name);
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony }
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony @Override
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony protected FileAnalyzer newAnalyzer() {
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony return new PascalAnalyzer(this);
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony }
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony @Override
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony public void writeXref(Reader in, Writer out, Definitions defs, Annotation annotation, Project project)
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony throws IOException {
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony PascalAnalyzer.writeXref(in, out, defs, annotation, project);
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony }
b2ed40b677afc33f05d9b24ebedc0583e357fa8fAlex Anthony}