Забон аст
санҷиши синф {
Функсияи статикӣ main() {
одамони ниҳоӣ = [
"Элизабет" => "Барномасозӣ",
"Ҷоэл" => "Тарроҳӣ"
];
барои (ном => кор дар одамон) {
trace('$name $кор барои зиндагӣ мекунад!');
}
}
}
Хусусиятҳои нав дар версияи 4.1:
- Оптимизатсияи рекурсии думи иловашуда.
- API-и нави ягона барои коркарди истисно илова карда шуд.
- Сохтмони "try {} catch(e) {}" ҳамчун стенография барои "try {} catch(e: haxe.Exception) {}" иҷозат дода мешавад.
- Дастгирии SSL ба тарҷумони арзёбӣ илова карда шуд.
- JVM-и мақсаднок дигар таҷрибавӣ ҳисобида намешавад.
- Барои Protocol Server Language, дастгирии функсияҳои "Goto Implementation" ва "Find Resources" илова карда шудааст.
- Номгузории беҳтаршудаи тағирёбандаҳои маҳаллӣ дар коди тавлидшуда. "Бозгашти" зиёдатӣ хориҷ карда шуд; дар функсияҳои тир бе арзиши бозгашт.
- Комбинатсияҳои дастрасӣ (гирифтан, пешфарз) дар майдонҳо иҷозат дода мешаванд (танҳо қабулкунанда, рафтори таъиноти пешфарз).
- Ба операторҳои афзоиш ва камкунӣ барои майдонҳо иҷозат диҳед
намудҳои абстрактӣ . - Дохилкунии такмилёфтаи ҳалқаҳо бо истифода аз итераторҳои номаълум.
- js: Татбиқи беҳтаршудаи StringMap барои ES5.
- js: Ба варианти компилятор "-D js-es=6" тавлиди тағирёбандаҳои литсензия илова карда шуд, тавлиди синфҳои ES6 такмил дода шуд.
- lua: "StringIterator" оптимизатсияшуда, коркарди хатогиҳо беҳтар карда шуд.
- php: Optimized "Std.isOfType" барои намудҳои асосӣ.
- php: Массивҳои тавлидшуда ҳоло интерфейсҳои аслии "Iterator", "IteratorAggregate", "Hesabшаванда" -ро амалӣ мекунанд.
- cs: Метамаълумотҳои иловашудаи "@:assemblyMeta" ва "@:assemblyStrict".
- python: татбиқи иловагии "__contains__" ба объектҳои номаълум
ва "__getitem__", ки ба онҳо имкон медиҳад ҳамчун луғатҳо дар рамзи тавлидшуда истифода бурда мешавад. - jvm: Ба туфайли роҳи нави дастрасӣ ба функсияҳои чопшуда ва тавлиди интерфейсҳои иловагӣ дар ҳолатҳое, ки объектҳо ҳамчун сохторҳои номаълум истифода мешаванд (ҷустуҷӯи динамикии моликият пешгирӣ карда мешавад) ба таври назаррас беҳтар карда шуд:
Такмилҳо дар китобхонаи стандартӣ:
- Функсияи "Array.contains" илова карда шуд.
- "Array.keyValueIterator" илова карда шуд, ки итератсияи калид-арзишро барои массивҳо амалӣ мекунад ("барои (калиди => арзиши дар массив)").
- Навъи маҳдудияти иловашуда "haxe.Constraints.NotVoid".
- Функсияҳои "findIndex" ва "foldi" ба синфи "Lambda" илова карда шудаанд.
- Татбиқи "дастрасии массив" (дастрасӣ тавассути "arr[i]") ва итератсияи калидӣ барои "haxe.ds.HashMap".
- jvm: Версияҳои мушаххаси JVM-и "StringMap", "sys.thread.Lock", "sys.thread.Thread" амалӣ карда шуданд.
- java/jvm: Татбиқи аслии "MD5", "SHA-1" ва "SHA-256" барои модулҳои "haxe.crypto" истифода шудааст.
- макро: Иловашуда "haxe.macro.Context.containsDisplayPosition(pos)".
- nullsafety: Ҳолати "қатъӣ" ҳоло ҳамчун риштаи ягона баррасӣ мешавад; режими "StrictThreaded" илова карда шуд.
- "Std.is" ба фоидаи "Std.isOfType" бекор карда шудааст.
- Ҳангоми истифодаи тағирёбандаҳои маҳаллӣ бидуни арзишҳо дар бастаҳо огоҳӣ илова карда шуд.
- js: "ntyped __js__(code, args)" бекор карда шудааст ва бо "js.Syntax.code(code, args)" иваз карда шудааст.
- php/neko: "neko.Web" ва "php.Web" бекор карда шудаанд ва дертар ба китобхонаи "hx4compat" интиқол дода мешаванд.
Дар нашри оянда
- Такмилдиҳии мудири баста
хахелиб . - Системаи асинхронӣ дар асоси API
лиув . - Корутинҳо.
- Эълон кардани функсияҳои статикии модулӣ ва тағирёбандаҳо бидуни эҷоди синфҳо (аллакай дар сохтмонҳои шабона дастрасанд).
Манбаъ: opennet.ru