Add JVM compiler support.
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
4 * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
6 * The contents of this file are subject to the terms of either the GNU
7 * General Public License Version 2 only ("GPL") or the Common
8 * Development and Distribution License("CDDL") (collectively, the
9 * "License"). You may not use this file except in compliance with the
10 * License. You can obtain a copy of the License at
11 * http://www.netbeans.org/cddl-gplv2.html
12 * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
13 * specific language governing permissions and limitations under the
14 * License. When distributing the software, include this License Header
15 * Notice in each file and include the License file at
16 * nbbuild/licenses/CDDL-GPL-2-CP. Sun designates this
17 * particular file as subject to the "Classpath" exception as provided
18 * by Sun in the GPL Version 2 section of the License file that
19 * accompanied this code. If applicable, add the following below the
20 * License Header, with the fields enclosed by brackets [] replaced by
21 * your own identifying information:
22 * "Portions Copyrighted [year] [name of copyright owner]"
24 * If you wish your version of this file to be governed by only the CDDL
25 * or only the GPL Version 2, indicate your decision by adding
26 * "[Contributor] elects to include this software in this distribution
27 * under the [CDDL or GPL Version 2] license." If you do not indicate a
28 * single choice of license, a recipient has the option to distribute
29 * your version of this file under either the CDDL, the GPL Version 2 or
30 * to extend the choice of license to its licensees as provided above.
31 * However, if you add GPL Version 2 code and therefore, elected the GPL
32 * Version 2 license, then the option applies only if the new code is
33 * made subject to such option by the copyright holder.
37 * Portions Copyrighted 2008 Sun Microsystems, Inc.
40 package org.netbeans.modules.ada.editor;
42 import org.netbeans.modules.ada.editor.navigator.AdaInstantRenamer;
43 import org.netbeans.api.lexer.Language;
44 import org.netbeans.modules.ada.editor.formatter.AdaFormatter;
45 import org.netbeans.modules.ada.editor.formatter.AdaKeystrokeHandler;
46 import org.netbeans.modules.ada.editor.indexer.AdaIndexer;
47 import org.netbeans.modules.ada.editor.lexer.AdaTokenId;
48 import org.netbeans.modules.ada.editor.navigator.AdaDeclarationFinder;
49 import org.netbeans.modules.ada.editor.navigator.AdaOccurrencesFinder;
50 import org.netbeans.modules.ada.editor.parser.AdaStructureScanner;
51 import org.netbeans.modules.ada.editor.parser.AdaParser;
52 import org.netbeans.modules.ada.editor.parser.AdaSemanticAnalyzer;
53 import org.netbeans.modules.csl.api.CodeCompletionHandler;
54 import org.netbeans.modules.csl.api.DeclarationFinder;
55 import org.netbeans.modules.csl.api.Formatter;
56 import org.netbeans.modules.csl.api.HintsProvider;
57 import org.netbeans.modules.csl.api.InstantRenamer;
58 import org.netbeans.modules.csl.api.KeystrokeHandler;
59 import org.netbeans.modules.csl.api.OccurrencesFinder;
60 import org.netbeans.modules.csl.api.SemanticAnalyzer;
61 import org.netbeans.modules.csl.api.StructureScanner;
62 import org.netbeans.modules.csl.spi.DefaultLanguageConfig;
63 import org.netbeans.modules.parsing.spi.Parser;
64 import org.netbeans.modules.parsing.spi.indexing.EmbeddingIndexerFactory;
69 * @author Andrea Lucarelli
71 public class AdaLanguage extends DefaultLanguageConfig {
73 public AdaLanguage() {
77 public Language getLexerLanguage() {
78 return AdaTokenId.language();
82 public String getDisplayName() {
87 // Service Registrations
91 public Parser getParser() {
92 return new AdaParser();
96 public boolean hasFormatter() {
101 public Formatter getFormatter() {
102 return new AdaFormatter();
106 public KeystrokeHandler getKeystrokeHandler() {
107 return new AdaKeystrokeHandler();
111 public CodeCompletionHandler getCompletionHandler() {
113 //return new AdaCodeCompletion();
117 public SemanticAnalyzer getSemanticAnalyzer() {
118 return new AdaSemanticAnalyzer();
122 public boolean hasOccurrencesFinder() {
127 public OccurrencesFinder getOccurrencesFinder() {
128 return new AdaOccurrencesFinder();
132 public StructureScanner getStructureScanner() {
133 return new AdaStructureScanner();
137 public EmbeddingIndexerFactory getIndexerFactory() {
138 return new AdaIndexer.Factory();
142 public boolean hasHintsProvider() {
147 public HintsProvider getHintsProvider() {
149 //return new AdaHintsProvider();
153 public DeclarationFinder getDeclarationFinder() {
154 return new AdaDeclarationFinder();
158 public InstantRenamer getInstantRenamer() {
159 return new AdaInstantRenamer();