CLI: move *CompilerArguments classes to cli-common module.

This commit is contained in:
Zalim Bashorov
2013-10-08 22:39:39 +04:00
parent db5faf8300
commit 0901c98ff8
20 changed files with 44 additions and 31 deletions
@@ -1,7 +1,22 @@
package org.jetbrains.jet.cli; /*
* Copyright 2010-2013 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.jet.cli.common.arguments;
import com.sampullara.cli.Argument; import com.sampullara.cli.Argument;
import org.jetbrains.jet.cli.common.CompilerArguments;
public abstract class CommonCompilerArguments extends CompilerArguments { public abstract class CommonCompilerArguments extends CompilerArguments {
@Argument(value = "tags", description = "Demarcate each compilation message (error, warning, etc) with an open and close tag") @Argument(value = "tags", description = "Demarcate each compilation message (error, warning, etc) with an open and close tag")
@@ -14,14 +14,14 @@
* limitations under the License. * limitations under the License.
*/ */
package org.jetbrains.jet.cli.common; package org.jetbrains.jet.cli.common.arguments;
import com.google.common.collect.Lists; import com.intellij.util.SmartList;
import java.util.List; import java.util.List;
public abstract class CompilerArguments { public abstract class CompilerArguments {
public List<String> freeArgs = Lists.newArrayList(); public List<String> freeArgs = new SmartList<String>();
public abstract boolean isHelp(); public abstract boolean isHelp();
public abstract boolean isTags(); public abstract boolean isTags();
@@ -14,12 +14,10 @@
* limitations under the License. * limitations under the License.
*/ */
package org.jetbrains.jet.cli.js; package org.jetbrains.jet.cli.common.arguments;
import com.sampullara.cli.Argument; import com.sampullara.cli.Argument;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.cli.CommonCompilerArguments;
/** /**
* NOTE: for now K2JSCompiler supports only minimal amount of parameters required to launch it from the plugin. * NOTE: for now K2JSCompiler supports only minimal amount of parameters required to launch it from the plugin.
@@ -15,10 +15,9 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package org.jetbrains.jet.cli.jvm; package org.jetbrains.jet.cli.common.arguments;
import com.sampullara.cli.Argument; import com.sampullara.cli.Argument;
import org.jetbrains.jet.cli.CommonCompilerArguments;
import java.util.List; import java.util.List;
@@ -27,8 +26,6 @@ import java.util.List;
*/ */
@SuppressWarnings("UnusedDeclaration") @SuppressWarnings("UnusedDeclaration")
public class K2JVMCompilerArguments extends CommonCompilerArguments { public class K2JVMCompilerArguments extends CommonCompilerArguments {
// TODO ideally we'd unify this with 'src' to just having a single field that supports multiple files/dirs // TODO ideally we'd unify this with 'src' to just having a single field that supports multiple files/dirs
private List<String> sourceDirs; private List<String> sourceDirs;
@@ -22,6 +22,7 @@ import com.intellij.openapi.Disposable;
import com.intellij.openapi.util.Disposer; import com.intellij.openapi.util.Disposer;
import com.sampullara.cli.Args; import com.sampullara.cli.Args;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.cli.common.arguments.CompilerArguments;
import org.jetbrains.jet.cli.common.messages.*; import org.jetbrains.jet.cli.common.messages.*;
import org.jetbrains.jet.cli.jvm.compiler.CompileEnvironmentException; import org.jetbrains.jet.cli.jvm.compiler.CompileEnvironmentException;
import org.jetbrains.jet.config.CompilerConfiguration; import org.jetbrains.jet.config.CompilerConfiguration;
@@ -31,6 +31,7 @@ import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.analyzer.AnalyzeExhaust; import org.jetbrains.jet.analyzer.AnalyzeExhaust;
import org.jetbrains.jet.cli.common.CLICompiler; import org.jetbrains.jet.cli.common.CLICompiler;
import org.jetbrains.jet.cli.common.ExitCode; import org.jetbrains.jet.cli.common.ExitCode;
import org.jetbrains.jet.cli.common.arguments.K2JSCompilerArguments;
import org.jetbrains.jet.cli.common.messages.AnalyzerWithCompilerReport; import org.jetbrains.jet.cli.common.messages.AnalyzerWithCompilerReport;
import org.jetbrains.jet.cli.common.messages.CompilerMessageLocation; import org.jetbrains.jet.cli.common.messages.CompilerMessageLocation;
import org.jetbrains.jet.cli.common.messages.CompilerMessageSeverity; import org.jetbrains.jet.cli.common.messages.CompilerMessageSeverity;
@@ -24,6 +24,7 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.cli.common.CLICompiler; import org.jetbrains.jet.cli.common.CLICompiler;
import org.jetbrains.jet.cli.common.CLIConfigurationKeys; import org.jetbrains.jet.cli.common.CLIConfigurationKeys;
import org.jetbrains.jet.cli.common.ExitCode; import org.jetbrains.jet.cli.common.ExitCode;
import org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments;
import org.jetbrains.jet.cli.common.messages.*; import org.jetbrains.jet.cli.common.messages.*;
import org.jetbrains.jet.cli.jvm.compiler.*; import org.jetbrains.jet.cli.jvm.compiler.*;
import org.jetbrains.jet.cli.jvm.repl.ReplFromTerminal; import org.jetbrains.jet.cli.jvm.repl.ReplFromTerminal;
+1 -1
View File
@@ -1,4 +1,4 @@
Usage: org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments Usage: org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments
-jar [String] jar file name -jar [String] jar file name
-src [String] source file or directory (allows many paths separated by the system path separator) -src [String] source file or directory (allows many paths separated by the system path separator)
-classpath [String] classpath to use when compiling -classpath [String] classpath to use when compiling
+1 -1
View File
@@ -1,5 +1,5 @@
Invalid argument: -wrongArgument Invalid argument: -wrongArgument
Usage: org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments Usage: org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments
-jar [String] jar file name -jar [String] jar file name
-src [String] source file or directory (allows many paths separated by the system path separator) -src [String] source file or directory (allows many paths separated by the system path separator)
-classpath [String] classpath to use when compiling -classpath [String] classpath to use when compiling
@@ -21,7 +21,7 @@ import com.google.common.collect.Lists;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.cli.common.ExitCode; import org.jetbrains.jet.cli.common.ExitCode;
import org.jetbrains.jet.cli.js.K2JSCompiler; import org.jetbrains.jet.cli.js.K2JSCompiler;
import org.jetbrains.jet.cli.js.K2JSCompilerArguments; import org.jetbrains.jet.cli.common.arguments.K2JSCompilerArguments;
import org.jetbrains.k2js.config.EcmaVersion; import org.jetbrains.k2js.config.EcmaVersion;
import org.jetbrains.k2js.test.SingleFileTranslationTest; import org.jetbrains.k2js.test.SingleFileTranslationTest;
@@ -22,7 +22,7 @@ import com.intellij.util.ArrayUtil;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.cli.common.ExitCode; import org.jetbrains.jet.cli.common.ExitCode;
import org.jetbrains.jet.cli.js.K2JSCompiler; import org.jetbrains.jet.cli.js.K2JSCompiler;
import org.jetbrains.jet.cli.js.K2JSCompilerArguments; import org.jetbrains.jet.cli.common.arguments.K2JSCompilerArguments;
import org.jetbrains.k2js.config.EcmaVersion; import org.jetbrains.k2js.config.EcmaVersion;
import org.jetbrains.k2js.test.SingleFileTranslationTest; import org.jetbrains.k2js.test.SingleFileTranslationTest;
import org.jetbrains.k2js.test.utils.LibraryFilePathsUtil; import org.jetbrains.k2js.test.utils.LibraryFilePathsUtil;
@@ -17,8 +17,8 @@
package org.jetbrains.kotlin.maven.doc; package org.jetbrains.kotlin.maven.doc;
import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoExecutionException;
import org.jetbrains.jet.cli.common.CompilerArguments; import org.jetbrains.jet.cli.common.arguments.CompilerArguments;
import org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments; import org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments;
import org.jetbrains.jet.cli.jvm.K2JVMCompiler; import org.jetbrains.jet.cli.jvm.K2JVMCompiler;
import org.jetbrains.kotlin.doc.KDocArguments; import org.jetbrains.kotlin.doc.KDocArguments;
import org.jetbrains.kotlin.doc.KDocCompiler; import org.jetbrains.kotlin.doc.KDocCompiler;
@@ -3,8 +3,8 @@ package org.jetbrains.kotlin.doc
import java.io.PrintStream import java.io.PrintStream
import org.jetbrains.jet.cli.common.CLICompiler import org.jetbrains.jet.cli.common.CLICompiler
import org.jetbrains.jet.cli.common.CLIConfigurationKeys import org.jetbrains.jet.cli.common.CLIConfigurationKeys
import org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments;
import org.jetbrains.jet.cli.jvm.K2JVMCompiler import org.jetbrains.jet.cli.jvm.K2JVMCompiler
import org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments
import org.jetbrains.jet.config.CompilerConfiguration import org.jetbrains.jet.config.CompilerConfiguration
/** /**
@@ -3,7 +3,7 @@ package test.kotlin.kdoc
import java.io.File import java.io.File
import kotlin.test.assertTrue import kotlin.test.assertTrue
import org.jetbrains.jet.cli.jvm.K2JVMCompiler import org.jetbrains.jet.cli.jvm.K2JVMCompiler
import org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments import org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments;
import org.jetbrains.kotlin.doc.highlighter.HtmlCompilerPlugin import org.jetbrains.kotlin.doc.highlighter.HtmlCompilerPlugin
import org.junit.Test import org.junit.Test
@@ -24,7 +24,7 @@ import org.gradle.api.internal.DefaultDomainObjectSet
import com.android.build.gradle.api.BaseVariant import com.android.build.gradle.api.BaseVariant
import com.android.build.gradle.api.AndroidSourceSet import com.android.build.gradle.api.AndroidSourceSet
import org.gradle.api.plugins.ExtensionAware import org.gradle.api.plugins.ExtensionAware
import org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments import org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments;
import java.util.ArrayList import java.util.ArrayList
import com.android.build.gradle.BasePlugin import com.android.build.gradle.BasePlugin
import com.android.build.gradle.api.LibraryVariant import com.android.build.gradle.api.LibraryVariant
@@ -1,8 +1,6 @@
package org.jetbrains.kotlin.gradle.tasks package org.jetbrains.kotlin.gradle.tasks
import org.gradle.api.tasks.compile.AbstractCompile import org.gradle.api.tasks.compile.AbstractCompile
import org.jetbrains.jet.cli.jvm.K2JVMCompiler
import org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments
import org.jetbrains.kotlin.gradle.plugin.KSpec import org.jetbrains.kotlin.gradle.plugin.KSpec
import java.io.File import java.io.File
import org.gradle.api.GradleException import org.gradle.api.GradleException
@@ -16,6 +14,8 @@ import org.gradle.api.tasks.TaskAction
import org.gradle.api.file.SourceDirectorySet import org.gradle.api.file.SourceDirectorySet
import java.util.ArrayList import java.util.ArrayList
import org.apache.commons.io.FilenameUtils import org.apache.commons.io.FilenameUtils
import org.jetbrains.jet.cli.jvm.K2JVMCompiler
import org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments;
import org.jetbrains.jet.cli.common.messages.MessageCollector import org.jetbrains.jet.cli.common.messages.MessageCollector
import org.jetbrains.jet.cli.common.messages.CompilerMessageSeverity import org.jetbrains.jet.cli.common.messages.CompilerMessageSeverity
import org.jetbrains.jet.cli.common.messages.CompilerMessageLocation import org.jetbrains.jet.cli.common.messages.CompilerMessageLocation
@@ -21,9 +21,9 @@ import com.google.common.io.InputSupplier;
import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugin.MojoFailureException;
import org.jetbrains.jet.cli.common.CLICompiler; import org.jetbrains.jet.cli.common.CLICompiler;
import org.jetbrains.jet.cli.common.CompilerArguments; import org.jetbrains.jet.cli.common.arguments.CompilerArguments;
import org.jetbrains.jet.cli.common.arguments.K2JSCompilerArguments;
import org.jetbrains.jet.cli.js.K2JSCompiler; import org.jetbrains.jet.cli.js.K2JSCompiler;
import org.jetbrains.jet.cli.js.K2JSCompilerArguments;
import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.util.io.FileUtil;
import org.jetbrains.k2js.config.MetaInfServices; import org.jetbrains.k2js.config.MetaInfServices;
@@ -17,8 +17,8 @@
package org.jetbrains.kotlin.maven; package org.jetbrains.kotlin.maven;
import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoExecutionException;
import org.jetbrains.jet.cli.common.CompilerArguments; import org.jetbrains.jet.cli.common.arguments.CompilerArguments;
import org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments; import org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments;
/** /**
* Compiles kotlin sources * Compiles kotlin sources
@@ -26,14 +26,14 @@ import org.apache.maven.plugin.logging.Log;
import org.apache.maven.project.MavenProject; import org.apache.maven.project.MavenProject;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.cli.common.CLICompiler; import org.jetbrains.jet.cli.common.CLICompiler;
import org.jetbrains.jet.cli.common.CompilerArguments;
import org.jetbrains.jet.cli.common.ExitCode; import org.jetbrains.jet.cli.common.ExitCode;
import org.jetbrains.jet.cli.common.KotlinVersion; import org.jetbrains.jet.cli.common.KotlinVersion;
import org.jetbrains.jet.cli.common.messages.CompilerMessageLocation; import org.jetbrains.jet.cli.common.messages.CompilerMessageLocation;
import org.jetbrains.jet.cli.common.messages.CompilerMessageSeverity; import org.jetbrains.jet.cli.common.messages.CompilerMessageSeverity;
import org.jetbrains.jet.cli.common.messages.MessageCollector; import org.jetbrains.jet.cli.common.messages.MessageCollector;
import org.jetbrains.jet.cli.common.arguments.CompilerArguments;
import org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments;
import org.jetbrains.jet.cli.jvm.K2JVMCompiler; import org.jetbrains.jet.cli.jvm.K2JVMCompiler;
import org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
@@ -18,8 +18,8 @@ package org.jetbrains.kotlin.maven;
import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugin.MojoFailureException;
import org.jetbrains.jet.cli.common.CompilerArguments; import org.jetbrains.jet.cli.common.arguments.CompilerArguments;
import org.jetbrains.jet.cli.jvm.K2JVMCompilerArguments; import org.jetbrains.jet.cli.common.arguments.K2JVMCompilerArguments;
import java.util.List; import java.util.List;