從Haxe 3.0開始,你可以通過運行 haxe --help-defines 獲得支持的編譯器標記(第6.1節)列表。
> Starting from Haxe 3.0, you can get the list of supported compiler ?ags (6.1) by running `haxe --help-defines`
| 標記 |描述|
| -- | -- |
|absolute-path|打印絕對文件路徑到trace 輸出|
|advanced-telemetry|允許SWF被Monocle工具實測|
|analyzer|使用靜態的分析儀用于優化(實驗)|
|as3|當輸出flash9 as3源代碼時定義|
|check-xml-proxy|檢查xml代理用到的字段|
|core-api|定義到核心api上下文|
|core-api-serialize|使用C#中的Serializable 屬性標記一些生成的代碼 api 類|
|cppia|生成實驗性的c++指令集|
|dce=<mode:std\|full\|no> (豎線因編輯器問題顯式不正常)|設置無用代碼消除(第8.2節)模式(默認為 std)|
|dce-debug|顯式無用代碼消除(第8.2節)日志|
|debug|當使用 -debug編譯時激活 |
|display|編譯過程中激活|
|dll-export|GenCPP 實驗性鏈接|
|dll-import| GenCPP 實驗性鏈接 |
|doc-gen |不執行任何 移除/改變, 以正確的生成文檔|
|dump |為內部的調試轉儲完全類型化的 AST到一個轉儲子目錄 - 使用dump-pretty進行Haxe風格的格式化。|
|dump-dependencies |轉儲類依賴關系到一個轉儲目錄 |
|dump-ignore-var-ids |從不美觀的dumps移除變量的IDs(有助于diff)|
|fdb |為FDB交互調試啟用完整的flash調試信息|
|file-extension |輸出c++源代碼文件名后綴|
|flash-strict | flash目標的嚴格類型 |
|flash-use-stage | 保留SWF庫的初始階段|
|force-lib-check|強制編譯器檢查 -net-lib 和 -java-lib 添加的類(內部)|
|force-native-property| Tag all properties with :nativeProperty metadata for 3.1 compatibility|
|format-warning|Print a warning for each formated string, for 2.x compatibility|
|gencommon-debug|GenCommon internal|
|haxe-boot| Given the name 'haxe' to the flash boot class instead of a generated name|
|haxe-ver|當前Haxe版本值|
|hxcpp-api-level|Provided to allow compatibility between hxcpp versions|
|include-prefix|prepend path to generated include files|
|interp|The code is compiled to be run with --interp|
|java-ver=[version:5-7]|設置目標的Java版本|
|js-classic|Don't use a function wrapper and strict mode in JS output|
|js-es5|Generate JS for ES5-compliant runtimes|
|js-unflatten|Generate nested objects for packages and types|
|keep-old-output|Keep old source files in the output directory (for C#/Java)|
|loop-unroll-max-cost|Maximum cost (number of expressions * iterations) before loop unrolling is canceled (default 250)|
|macro| Defined when code is compiled in the macro context|
|macro-times|Display per-macro timing when used with --times|
|net-ver=<version:20-45>|設置目標的.NET版本|
|net-target=<name>|Sets the .NET target. Defaults to net. xbox, micro (Micro Framework, compact (Compact Framework) are some valid values|
|neko-source|Output neko source instead of bytecode|
|neko-v1|Keep Neko 1.x compatibility|
|network-sandbox|Use local network sandbox instead of local file access one|
|no-compilation|Disable CPP final compilation|
|no-copt|Disable completion optimization (for debug purposes)|
|no-debug|Remove all debug macros from cpp output|
|no-deprecation-warnings|Do not warn if fields annotated with @:deprecated are used|
|no-flash-override|Change overrides on some basic classes into HX suffixed methods flash only|
|no-opt|Disable optimizations|
|no-pattern-matching|Disable pattern matching|
|no-inline|Disable inlining|
|no-root|GenCS internal|
|no-macro-cache|Disable macro context caching|
|no-simplify|Disable simplification filter|
|no-swf-compress|Disable SWF output compression|
|no-traces|Disable all trace calls|
|php-prefix|Compiled with --php-prefix|
|real-position|Disables haxe source mapping when targetting C#|
|replace-files|GenCommon internal|
|scriptable|GenCPP internal|
|shallow-expose|Expose types to surrounding scope of Haxe generated closure without writing to window object|
|source-map-content|Include the hx sources as part of the JS source map|
|swc|Output a SWC instead of a SWF|
|swf-compress-level=<level:1-9>|Set the amount of compression for the SWF output|
|swf-debug-password=<yourPassword>|Set a password for debugging. The password field is encrypted by using the MD5 algorithm and prevents unauthorised debugging of your swf. Without this flag -D fdb will use no password.|
|swf-direct-blit|Use hardware acceleration to blit graphics|
|swf-gpu|Use GPU compositing features when drawing graphics|
|swf-metadata=<file.xml>|Include contents of <file.xml> as metadata in the swf.|
|swf-preloader-frame|Insert empty first frame in swf. To be used together with -D flash-use-stage and -swf-lib|
|swf-protected|Compile Haxe private as protected in the SWF instead of public|
|swf-script-timeout|Maximum ActionScript processing time before script stuck dialog box displays (in seconds)|
|swf-use-doabc|Use DoAbc swf-tag instead of DoAbcDefine|
|sys|Defined for all system platforms|
|unsafe|Allow unsafe code when targeting C#|
|use-nekoc|Use nekoc compiler instead of internal one|
|use-rtti-doc|Allows access to documentation during compilation|
|vcproj|GenCPP internal|
- 空白目錄
- 1.Haxe介紹
- 1.1.Haxe是什么
- 1.2.關于本文檔
- 1.2.1.作者及貢獻者
- 1.2.2.License
- 1.3Hello World
- 1.4.Haxe的歷史
- 2.類型
- 2.1.基本類型
- 2.1.1.數值類型
- 2.1.2.溢出
- 2.1.3.數值運算符
- 2.1.4.Bool類型
- 2.1.5.Void類型
- 2.2.為空性
- 2.2.1.可選參數和為空性
- 2.3.類實例
- 2.3.1.類的構造函數
- 2.3.2.繼承
- 2.3.3.接口
- 2.4.枚舉實例
- 2.4.1.Enum構造函數
- 2.4.2.使用枚舉
- 2.5.匿名結構
- 2.5.1.結構值的JSON形式
- 2.5.2. 結構類型的類記法
- 2.5.3.可選字段
- 2.5.4.性能影響
- 2.6.函數類型
- 2.6.1.可選參數
- 2.6.2.默認值
- 2.7.動態類型
- 2.7.1.Dynamic使用類型參數
- 2.7.2.實現Dynamic
- 2.8.抽象類型
- 2.8.1.隱式類型轉換
- 2.8.2.運算符重載
- 2.8.3.數組訪問
- 2.8.4.選擇函數
- 2.8.5.枚舉抽象類型
- 2.8.6.轉發抽象類型字段
- 2.8.7.核心類型抽象
- 2.9.單形
- 3.類型系統
- 3.1.Typedef
- 3.1.1.擴展
- 3.2.類型參數
- 3.2.1.約束
- 3.3.泛型
- 3.3.1.泛型類型參數解釋
- 3.4.變異
- 3.5.統一
- 3.5.1.類/接口 之間
- 3.5.2.結構子類型化
- 3.5.3.單形
- 3.5.4.函數返回
- 3.5.5.通用基本類型
- 3.6.類型推斷
- 3.6.1.由上而下推斷
- 3.6.2.局限
- 3.7.模塊和路徑
- 3.7.1.模塊子類型
- 3.7.2.Import
- 3.7.3.解析順序
- 4.類字段
- 4.1.變量
- 4.2.屬性
- 4.2.1.常見訪問標識符組合
- 4.2.2.對類型系統的影響
- 4.2.3.getter和setter的規則
- 4.3.方法
- 4.3.1.重寫方法
- 4.3.2.變異和訪問修飾符的影響
- 4.4.訪問修飾符
- 4.4.1.可見性
- 4.4.2.Inline
- 4.4.3.Dynamic
- 4.4.4.Override
- 4.4.5.Static
- 5.表達式
- 5.1.塊
- 5.2.常量
- 5.3.二元操作符
- 5.4.一元操作符
- 5.5.數組聲明
- 5.6.對象聲明
- 5.7.字段訪問
- 5.8.數組訪問
- 5.9.函數調用
- 5.10.var
- 5.11.局部函數
- 5.12.new
- 5.13.for
- 5.14.while
- 5.15.do-while
- 5.16.if
- 5.17.switch
- 5.18.try/catch
- 5.19.return
- 5.20.break
- 5.21.continue
- 5.22.throw
- 5.23.類型轉換
- 5.23.1.不安全轉換
- 5.23.2.安全轉換
- 5.24.類型檢查
- 6.語言特性
- 6.1.條件編譯
- 6.2.Externs
- 6.3.靜態擴展
- 6.3.1.標準庫中的靜態擴展
- 6.4.模式匹配
- 6.4.1.介紹
- 6.4.2.枚舉匹配
- 6.4.3.變量捕獲
- 6.4.4.結構匹配
- 6.4.5.數組匹配
- 6.4.6.Or 模式
- 6.4.7.守護
- 6.4.8.多個值的匹配
- 6.4.9.提取器
- 6.4.10.窮盡性檢查
- 6.4.11.無效的模式檢查
- 6.5.字符串插值
- 6.6.數組推導
- 6.7.迭代器
- 6.8.函數綁定
- 6.9.元數據
- 6.10.訪問控制
- 6.11.內聯構造函數
- 7.編譯器用法
- 7.1.編譯器標記
- 8.編譯器功能
- 8.1.內建編譯器元數據
- 8.2.無用代碼消除
- 8.3.編譯器服務
- 8.3.1.概述
- 8.3.2.字段訪問完成
- 8.3.3.調用參數完成
- 8.3.4.類型路徑完成
- 8.3.5.使用完成
- 8.3.6.位置完成
- 8.3.7.頂級完成
- 8.3.8.完成服務
- 8.4.資源
- 8.4.1.嵌入資源
- 8.4.2.檢索文本資源
- 8.4.3.檢索二進制資源
- 8.4.4.實現細節
- 8.5.運行時類型信息
- 8.5.1.RTTI 結構
- 8.6.靜態分析儀
- 9.宏
- 9.1.宏上下文
- 9.2.參數
- 9.2.1.ExprOf
- 9.2.2.常數表達式
- 9.2.3.其它的參數
- 9.3.具體化
- 9.3.1.表達式具體化
- 9.3.2.類型具體化
- 9.3.3.類具體化
- 9.4.工具
- 9.5.類型構建
- 9.5.1.枚舉構建
- 9.5.2.@:autoBuild
- 9.5.3.@:genericBuild
- 9.6.限制
- 9.6.1.Macro-in-Macro
- 9.6.2.靜態擴展
- 9.6.3.構建順序
- 9.6.4.類型參數
- 9.7.初始化宏
- 10.標準庫
- 10.1.字符串
- 10.2.數據結構
- 10.2.1.數組
- 10.2.2.向量
- 10.2.3.列表
- 10.2.4.GenericStack
- 10.2.5.Map
- 10.2.6.Option
- 10.3.正則表達式
- 10.3.1.匹配
- 10.3.2.分組
- 10.3.3.替換
- 10.3.4.分割
- 10.3.5.Map
- 10.3.6.實現細節
- 10.4.Math
- 10.4.1.特殊數值
- 10.4.2.數學錯誤
- 10.4.3.整數數學
- 10.4.4.擴展
- 10.5.Lambda
- 10.6.模板
- 10.7.反射
- 10.8.序列化
- 10.8.1.格式化序列化
- 10.9.Xml
- 10.9.1.開始使用Xml
- 10.9.2.解析Xml
- 10.9.3.編碼Xml
- 10.10.Json
- 10.10.1.解析JSON
- 10.10.2.編碼JSON
- 10.10.3.實現細節
- 10.11.Input/Output
- 10.12.Sys/sys
- 10.13.遠程處理
- 10.13.1.遠程連接
- 10.13.2.實現細節
- 10.14.單元測試
- 11.Haxelib
- 11.1.Haxe編譯器使用庫
- 11.2.haxelib.json
- 11.2.1.版本控制
- 11.2.2.依賴關系
- 11.3.extraParams.hxml
- 11.4.使用Haxelib
- 12.目標平臺細節
- 12.1.JavaScript
- 12.1.1.開始使用Haxe/JavaScript
- 12.1.2.使用外部JavaScript庫
- 12.1.3.注入原生JavaScript
- 12.1.4.JavaScript untyped函數
- 12.1.5.調試JavaScript
- 12.1.6.JavaScript目標元數據
- 12.1.7.為JavaScript暴露Haxe類
- 12.1.8.使用 require函數加載外部類
- 12.2.Flash
- 12.2.1.開始使用Haxe/Flash
- 12.2.2.嵌入資源
- 12.2.3.使用外部Flash庫
- 12.2.4.Flash目標元數據
- 12.3.Neko
- 12.4.PHP
- 12.4.1.開始使用Haxe/PHP
- 12.4.2.PHP untyped函數
- 12.5.C++
- 12.5.1.Using C++定義
- 12.5.2.Using C++ 指針
- 12.6.Java
- 12.7.C#
- 12.8.Python