Основные типы

Синтаксис haXe подобен Java, ActionScript или C++. Файл исходного кода состоит из необязательного названия пакета, за которым следует несколько описаний импорта (imports) и типов. Для более чёткого разделения, имена пакетов состоят из нескольких имён-идентификаторов, начинающихся с символов в нижнем регистре, а идентификаторы типов всегда начинаются с заглавных букв. Существует несколько разновидностей типов. Самые важные из них - классы (class) и перечисления (enum). Вот несколько основных типов, определенных в стандартной библиотеке:
enum Void {}

class Float {}

class Int extends Float {}

enum Bool {
    true;
    false;
}

enum Dynamic<T> {}
Рассмотрим каждый тип по отдельности:
  • Void определен как enum. Enum перечисляет список допустимых конструкторов. Пустое перечисление, например Void, не может иметь каких-либо значений. Тем не менее, это вполне допустимый тип, который может быть определен и использован.
  • Float - это класс чисел с плавающей точкой. У него нет никаких методов, так что его реализация может быть существенно оптимизирована на некоторых платформах.
  • Int - целое число. У него также нет методов, но он является наследником класса Float, поэтому везде, где нужен Float, вы можете использовать Int, но не наоборот.
  • Bool - это перечисление, как и Void, но у него есть два экземпляра true и false. Как видно из этого, даже стандартные типы могут быть легко определены с помощью системы типов hAxe. Это также означает, что вы можете определять свои собственные типы.
  • Dynamic это перечисление с параметром типа (type parameter). Более подробная информация о том, как использовать параметры типов будет дана далее в описании языка.