/*
* 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 com.intellij.plugins.haxe.build;
/**
* Created by ebishton on 4/19/15.
*/
public class IdeaTarget {
// Loads the string at compile-time from a templatized class.
private static final String SDK_VERSION_STRING = IdeaSDKIdentifier.BUILD_IDENTIFIER;
private static final String SDK_TYPE = IdeaSDKIdentifier.BUILD_TYPE;
private static final int SDK_CODELINE = IdeaSDKIdentifier.BUILD_CODELINE;
private static final int SDK_BUILD_NUMBER = IdeaSDKIdentifier.BUILD_NUMBER;
private static final int SDK_BUILD_PATCH = IdeaSDKIdentifier.BUILD_PATCH;
// Add new constants for specific requirements here.
// All of these should be boolean constants resolvable at compile time.
// They will be used by the compiler to eliminate dead code, and to
// allow non-compatible code to exist in the same file.
//
// Specific code inflection points (breaking changes in a codeline)
// that require special handling should be placed here as well, perhaps
// even documenting the change(s) that necessitated the check.
//
// When writing code using these constants, always use the most generic
// of the compatibility strings possible.
//
public static final boolean IS_VERSION_15_1_COMPATIBLE = (SDK_CODELINE >= 145);
public static final boolean IS_VERSION_15_0_COMPATIBLE = (SDK_CODELINE >= 143);
public static final boolean IS_VERSION_15_COMPATIBLE = (IS_VERSION_15_0_COMPATIBLE || IS_VERSION_15_1_COMPATIBLE);
public static final boolean IS_VERSION_14_1_5_COMPATIBLE = (SDK_CODELINE > 141 ||
( SDK_CODELINE == 141 && SDK_BUILD_NUMBER >= 2735));
public static final boolean IS_VERSION_14_1_6_COMPATIBLE = (SDK_CODELINE > 141 ||
( SDK_CODELINE == 141 && SDK_BUILD_NUMBER >= 3056));
public static final boolean IS_VERSION_14_1_COMPATIBLE = (SDK_CODELINE >= 141);
public static final boolean IS_VERSION_14_0_COMPATIBLE = (SDK_CODELINE >= 139);
public static final boolean IS_VERSION_14_COMPATIBLE = (IS_VERSION_14_0_COMPATIBLE || IS_VERSION_14_1_COMPATIBLE);
public static final boolean IS_VERSION_13_1_COMPATIBLE = (SDK_CODELINE >= 137);
public static final boolean IS_VERSION_13_0_COMPATIBLE = (SDK_CODELINE >= 135);
public static final boolean IS_VERSION_13_COMPATIBLE = (IS_VERSION_13_0_COMPATIBLE || IS_VERSION_13_1_COMPATIBLE);
}