This is an automated email from the ASF dual-hosted git repository. joshtynjala pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/royale-docs.git
The following commit(s) were added to refs/heads/master by this push: new 7ec2607 compiler: combine pages that list compiler options 7ec2607 is described below commit 7ec2607fdbcddea384360392c055d9c5de0e38ae Author: Josh Tynjala <joshtynj...@bowlerhat.dev> AuthorDate: Tue Sep 27 07:48:44 2022 -0700 compiler: combine pages that list compiler options --- compiler/compiler-arguments.md | 258 ----------------- compiler/compiler-options.md | 644 ++++++++++++++++++++++++++++------------- 2 files changed, 449 insertions(+), 453 deletions(-) diff --git a/compiler/compiler-arguments.md b/compiler/compiler-arguments.md deleted file mode 100644 index 7f7599f..0000000 --- a/compiler/compiler-arguments.md +++ /dev/null @@ -1,258 +0,0 @@ ---- -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You 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. - -layout: docpage -title: Compiler Arguments -description: A full list of available compiler arguments -permalink: /compiler/compiler-arguments ---- - -# Compiler Options - -List of available compiler options. This list can be generated by running `mxmlc -help advanced` - -`-allow-dynamic-bindings` -`-api-report` `<filename>` -- Used to generate a report of APIs used in a project. -`-closure-lib` `<string>` -`-compiler.accessible` -`-compiler.actionscript-file-encoding` `<string>` -`-compiler.advanced-telemetry` -`-compiler.allow-abstract-classes` -- If true, classes and methods can be declared `abstract` and must be overridden to be used. -`-compiler.allow-import-aliases` -`-compiler.allow-private-constructors` -- If true, constructors can be declared private. Useful for a class with all-static methods or Singletons. -`-compiler.allow-private-name-conflicts` -`-compiler.allow-source-path-overlap` -`-compiler.allow-subclass-overrides` -`-compiler.as3` -`-compiler.binding-event-handler-class` `<string>` -`-compiler.binding-event-handler-event` `<string>` -`-compiler.binding-event-handler-interface` `<string>` -`-compiler.binding-value-change-event` `<string>` -`-compiler.binding-value-change-event-kind` `<string>` -`-compiler.binding-value-change-event-type` `<string>` -`-compiler.byte-array-embed-class` `<string>` -`-compiler.component-factory-class` `<string>` -`-compiler.component-factory-interface` `<string>` -`-compiler.compress` -`-compiler.context-root` `<context-path>` -`-compiler.debug` -`-compiler.defaults-css-files` `[filename]` `[...]` -`-compiler.defaults-css-url` `<string>` -`-compiler.define` `<name>` `<value>` -- used to define compiler variables (i.e. `COMPILE::JS`, `CONFIG::debug`) -`-compiler.enable-runtime-design-layers` -`-compiler.es` -`-compiler.exclude-defaults-css-files` `[filename]` `[...]` -`-compiler.external-library-path` `[path-element]` `[...]` -`-compiler.fonts.advanced-anti-aliasing` -`-compiler.fonts.languages.language-range` `<lang>` `<range>` -`-compiler.fonts.local-font-paths` `[path-element]` `[...]` -`-compiler.fonts.local-fonts-snapshot` `<string>` -`-compiler.fonts.managers` `[manager-class]` `[...]` -`-compiler.fonts.max-cached-fonts` `<string>` -`-compiler.fonts.max-glyphs-per-face` `<string>` -`-compiler.fxg-base-class` `<string>` -`-compiler.headless-server` -`-compiler.include-libraries` `[library]` `[...]` -`-compiler.info.royale` -`-compiler.isolate-styles` -`-compiler.js-external-library-path` `[path-element]` `[...]` -`-compiler.js-library-path` `[path-element]` `[...]` -`-compiler.js-namespaces.namespace` `[uri]` `[manifest]` `[...]` -`-compiler.keep-all-type-selectors` -`-compiler.keep-as3-metadata` `[name]` `[...]` -`-compiler.keep-code-with-metadata` `[name]` `[...]` -`-compiler.library-path` `[path-element]` `[...]` -`-compiler.locale` `[locale-element]` `[...]` -`-compiler.minimum-supported-version` `<string>` -`-compiler.mobile` -`-compiler.mxml.children-as-data` -`-compiler.mxml.compatibility-version` `<version>` -`-compiler.mxml.force-local-id` -`-compiler.mxml.imports` `[implicit-import]` `[...]` -`-compiler.mxml.minimum-supported-version` `<string>` -`-compiler.namespaces.namespace` `[uri]` `[manifest]` `[...]` -`-compiler.omit-trace-statements` -`-compiler.optimize` -`-compiler.preloader` `<string>` -`-compiler.proxy-base-class` `<string>` -`-compiler.remove-dead-code` -`-compiler.report-invalid-styles-as-warnings` -`-compiler.report-missing-required-skin-parts-as-warnings` -`-compiler.services` `<filename>` -`-compiler.show-actionscript-warnings` -`-compiler.show-binding-warnings` -`-compiler.show-invalid-css-property-warnings` -`-compiler.show-multiple-definition-warnings` -`-compiler.show-shadowed-device-font-warnings` -`-compiler.show-unused-type-selector-warnings` -`-compiler.source-path` `[path-element]` `[...]` -`-compiler.states-class` `<string>` -`-compiler.states-event-override-class` `<string>` -`-compiler.states-instance-override-class` `<string>` -`-compiler.states-property-override-class` `<string>` -`-compiler.states-style-override-class` `<string>` -`-compiler.strict` -`-compiler.strict-identifier-names` -`-compiler.strict-xml` -`-compiler.swf-external-library-path` `[path-element]` `[...]` -`-compiler.swf-library-path` `[path-element]` `[...]` -`-compiler.targets` `[target]` `[...]` -`-compiler.theme` `[filename]` `[...]` -`-compiler.verbose-stacktraces` -`-compiler.warn-array-tostring-changes` -`-compiler.warn-assignment-within-conditional` -`-compiler.warn-bad-array-cast` -`-compiler.warn-bad-bool-assignment` -`-compiler.warn-bad-date-cast` -`-compiler.warn-bad-es3-type-method` -`-compiler.warn-bad-es3-type-prop` -`-compiler.warn-bad-nan-comparison` -`-compiler.warn-bad-null-assignment` -`-compiler.warn-bad-null-comparison` -`-compiler.warn-bad-undefined-comparison` -`-compiler.warn-boolean-constructor-with-no-args` -`-compiler.warn-changes-in-resolve` -`-compiler.warn-class-is-sealed` -`-compiler.warn-const-not-initialized` -`-compiler.warn-constructor-returns-value` -`-compiler.warn-deprecated-event-handler-error` -`-compiler.warn-deprecated-function-error` -`-compiler.warn-deprecated-property-error` -`-compiler.warn-duplicate-argument-names` -`-compiler.warn-duplicate-variable-def` -`-compiler.warn-for-var-in-changes` -`-compiler.warn-import-hides-class` -`-compiler.warn-instance-of-changes` -`-compiler.warn-internal-error` -`-compiler.warn-level-not-supported` -`-compiler.warn-missing-namespace-decl` -`-compiler.warn-negative-uint-literal` -`-compiler.warn-no-constructor` -`-compiler.warn-no-explicit-super-call-in-constructor` -`-compiler.warn-no-type-decl` -`-compiler.warn-number-from-string-changes` -`-compiler.warn-scoping-change-in-this` -`-compiler.warn-slow-text-field-addition` -`-compiler.warn-this-within-closure` -`-compiler.warn-unlikely-function-value` -`-compiler.warn-xml-class-has-changed` -`-debug-password` `<string>` -`-default-background-color` `<int>` -`-default-frame-rate` `<int>` -`-default-script-limits` `<max-recursion-depth>` `<max-execution-time>` -`-default-size` `<width>` `<height>` -`-dependency-graph` `<filename>` -`-dump-config` `<filename>` -`-error-problems` `[class]` `[...]` -`-exclude-native-js-libraries` -`-export-internal-symbols` -`-export-protected-symbols` -`-export-public-symbols` -`-external-js-lib` `[path-element]` `[...]` -`-externs` `[symbol]` `[...]` -`-externs-report` `<filename>` -`-frames.frame` `[label]` `[classname]` `[...]` -`-help` `[keyword]` `[...]` -`-html-output-filename` `<filename>` -`-html-template` `<filename>` -`-ignore-problems` `[class]` `[...]` -`-include-inheritance-dependencies-only` -`-include-resource-bundles` `[bundle]` `[...]` -`-includes` `[symbol]` `[...]` -`-inline-constants` -`-js-compiler-define` `<name>` `<value>` -`-js-compiler-option` `[option]` `[...]` -`-js-complex-implicit-coercions` -`-js-default-initializers` -`-js-dynamic-access-unknown-members` -`-js-getter-prefix` `<string>` -`-js-load-config` `<filename>` -`-js-output` `<filename>` -`-js-output-optimization` `[optimization]` `[...]` -`-js-output-type` `<string>` -`-js-resolve-uncertain` -`-js-setter-prefix` `<string>` -`-js-vector-emulation-class` `<string>` -`-js-vector-index-checks` -`-jsx-factory` `<string>` -`-keep-asdoc` -`-link-report` `<filename>` -`-load-config` `<filename>` -`-load-externs` `<filename>` -`-marmotinni` `<string>` -`-metadata.contributor` `<name>` -`-metadata.creator` `<name>` -`-metadata.date` `<text>` -`-metadata.dateFormat` `<text>` -`-metadata.description` `<text>` -`-metadata.language` `<code>` -`-metadata.localized-description` `<text>` `<lang>` -`-metadata.localized-title` `<title>` `<lang>` -`-metadata.publisher` `<name>` -`-metadata.title` `<text>` -`-module-output` `<filename>` -`-mxml-reflect-object-property` -`-output` `<filename>` -`-prevent-rename-internal-instance-accessors` -`-prevent-rename-internal-instance-methods` -`-prevent-rename-internal-instance-variables` -`-prevent-rename-internal-static-accessors` -`-prevent-rename-internal-static-methods` -`-prevent-rename-internal-static-variables` -`-prevent-rename-internal-symbols` -`-prevent-rename-mxml-symbol-references` -`-prevent-rename-protected-instance-accessors` -`-prevent-rename-protected-instance-methods` -`-prevent-rename-protected-instance-variables` -`-prevent-rename-protected-static-accessors` -`-prevent-rename-protected-static-methods` -`-prevent-rename-protected-static-variables` -`-prevent-rename-protected-symbols` -`-prevent-rename-public-instance-accessors` -`-prevent-rename-public-instance-methods` -`-prevent-rename-public-instance-variables` -`-prevent-rename-public-static-accessors` -`-prevent-rename-public-static-methods` -`-prevent-rename-public-static-variables` -`-prevent-rename-public-symbols` -`-raw-metadata` `<text>` -`-remove-circulars` -- Causes dependencies to be written in a way which satisfies the Google Closure Compiler. Use this if you have circular dependencies. -`-remove-unused-rsls` -`-resource-bundle-list` `<filename>` -`-runtime-shared-libraries` `[url]` `[...]` -`-runtime-shared-library-path` `[path-element]` `[rsl-url]` `[policy-file-url]` `[rsl-url]` `[policy-file-url]` -`-runtime-shared-library-settings.application-domain` `[path-element]` `[application-domain-target]` `[...]` -`-runtime-shared-library-settings.force-rsls` `[path-element]` `[...]` -`-sdk-js-lib` `[path-element]` `[...]` -`-size-report` `<filename>` -`-skip-transpile` -`-source-map` -`-source-map-source-root` `<string>` -`-static-link-runtime-shared-libraries` -`-strict-publish` -`-swf-debugfile-alias` `<filename>` -`-swf-version` `<int>` -`-target-player` `<version>` -`-tools-locale` `<string>` -`-use-direct-blit` -`-use-flashbuilder-project-files` -`-use-gpu` -`-use-network` -`-verify-digests` -`-version` -`-warn-public-vars` -`-warning-problems` `[class]` `[...]` -`-warnings` diff --git a/compiler/compiler-options.md b/compiler/compiler-options.md index 299e8cf..7206c08 100644 --- a/compiler/compiler-options.md +++ b/compiler/compiler-options.md @@ -24,67 +24,241 @@ permalink: /compiler/compiler-options List of recent commonly used available compiler options -## Contents - -**General compiler options** -* [allow-abstract-classes](compiler/compiler-options#allow-abstract-classes) -* [allow-import-aliases](compiler/compiler-options#allow-import-aliases) -* [allow-private-constructors](compiler/compiler-options#allow-private-constructors) -* [strict-identifier-names](compiler/compiler-options#strict-identifier-names) - -**JavaScript compiler options** -* [html-output-filename](compiler/compiler-options#html-output-filename) -* [html-template](compiler/compiler-options#html-template) -* [inline-constants](compiler/compiler-options#inline-constants) -* [js-compiler-option](compiler/compiler-options#js-compiler-option) -* [js-default-initializers](compiler/compiler-options#js-default-initializers) -* [js-dynamic-access-unknown-members](compiler/compiler-options#js-dynamic-access-unknown-members) -* [js-define](compiler/compiler-options#js-define) -* [js-load-config](compiler/compiler-options#js-load-config) -* [js-output](compiler/compiler-options#js-output) -* [js-vector-emulation-class](compiler/compiler-options#js-vector-emulation-class) -* [jsx-factory](compiler/compiler-options#jsx-factory) -* [keep-asdoc](compiler/compiler-options#keep-asdoc) -* [remove-circulars](compiler/compiler-options#remove-circulars) -* [show-binding-warnings](compiler/compiler-options#show-binding-warnings) -* [skip-transpile](compiler/compiler-options#skip-transpile) -* [source-map](compiler/compiler-options#source-map) -* [source-map-source-root](compiler/compiler-options#source-map-source-root) -* [targets](compiler/compiler-options#targets) -* [warn-public-vars](compiler/compiler-options#warn-public-vars) - -**Reduce output size** - -Note: These options apply only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), the following options do not exist and you will get a warning if you try to use them. The library code will be output using whatever options are used in the final application. - -You can use these options to reduce the size of your compiled application: - -* [export-public-symbols](compiler/compiler-options#export-public-symbols) -* [export-protected-symbols](compiler/compiler-options#export-protected-symbols) -* [export-internal-symbols](compiler/compiler-options#export-internal-symbols) -* [prevent-rename-public-symbols](compiler/compiler-options#prevent-rename-public-symbols) - * [prevent-rename-public-static-methods](compiler/compiler-options#prevent-rename-public-static-methods) - * [prevent-rename-public-instance-methods](compiler/compiler-options#prevent-rename-public-instance-methods) - * [prevent-rename-public-static-variables](compiler/compiler-options#prevent-rename-public-static-variables) - * [prevent-rename-public-instance-variables](compiler/compiler-options#prevent-rename-public-instance-variables) - * [prevent-rename-public-static-accessors](compiler/compiler-options#prevent-rename-public-static-accessors) - * [prevent-rename-public-instance-accessors](compiler/compiler-options#prevent-rename-public-instance-accessors) -* [prevent-rename-protected-symbols](compiler/compiler-options#prevent-rename-protected-symbols) - * [prevent-rename-protected-static-methods](compiler/compiler-options#prevent-rename-protected-static-methods) - * [prevent-rename-protected-instance-methods](compiler/compiler-options#prevent-rename-protected-instance-methods) - * [prevent-rename-protected-static-variables](compiler/compiler-options#prevent-rename-protected-static-variables) - * [prevent-rename-protected-instance-variables](compiler/compiler-options#prevent-rename-protected-instance-variables) - * [prevent-rename-protected-static-accessors](compiler/compiler-options#prevent-rename-protected-static-accessors) - * [prevent-rename-protected-instance-accessors](compiler/compiler-options#prevent-rename-protected-instance-accessors) -* [prevent-rename-internal-symbols](compiler/compiler-options#prevent-rename-internal-symbols) - * [prevent-rename-internal-static-methods](compiler/compiler-options#prevent-rename-internal-static-methods) - * [prevent-rename-internal-instance-methods](compiler/compiler-options#prevent-rename-internal-instance-methods) - * [prevent-rename-internal-static-variables](compiler/compiler-options#prevent-rename-internal-static-variables) - * [prevent-rename-internal-instance-variables](compiler/compiler-options#prevent-rename-internal-instance-variables) - * [prevent-rename-internal-static-accessors](compiler/compiler-options#prevent-rename-internal-static-accessors) - * [prevent-rename-internal-instance-accessors](compiler/compiler-options#prevent-rename-internal-instance-accessors) - -## General compiler options +List of available compiler options. This list can be generated by running `mxmlc -help advanced` + +- `-allow-dynamic-bindings` -- Controls whether data binding may use reflection for dynamic access. +- `-api-report` `<filename>` -- Used to generate a report of APIs used in a project. +- `-closure-lib` `<string>` -- Customize the version of Google Closure Library used by the framework. +- `-compiler.accessible` -- Controls whether accessibility is enabled for a generated _.swf_ file. +- `-compiler.actionscript-file-encoding` `<string>` +- `-compiler.advanced-telemetry` -- Controls advanced telemetry data is enabled for a generated _.swf_ file, allowing more data to be accessed by Adobe Scout. +- [`-compiler.allow-abstract-classes`](compiler/compiler-options#allow-abstract-classes) -- If true, classes and methods can be declared `abstract` and must be overridden to be used. +- [`-compiler.allow-import-aliases`](compiler/compiler-options#allow-import-aliases) +- [`-compiler.allow-private-constructors`](compiler/compiler-options#allow-private-constructors) -- If true, constructors can be declared private. Useful for a class with all-static methods or Singletons. +- `-compiler.allow-private-name-conflicts` +- `-compiler.allow-source-path-overlap` +- `-compiler.allow-subclass-overrides` +- `-compiler.as3` +- `-compiler.binding-event-handler-class` `<string>` +- `-compiler.binding-event-handler-event` `<string>` +- `-compiler.binding-event-handler-interface` `<string>` +- `-compiler.binding-value-change-event` `<string>` +- `-compiler.binding-value-change-event-kind` `<string>` +- `-compiler.binding-value-change-event-type` `<string>` +- `-compiler.byte-array-embed-class` `<string>` +- `-compiler.component-factory-class` `<string>` +- `-compiler.component-factory-interface` `<string>` +- `-compiler.compress` +- `-compiler.context-root` `<context-path>` +- `-compiler.debug` -- Determines if the compiler generates a debug or release build. +- `-compiler.defaults-css-files` `[filename]` `[...]` +- `-compiler.defaults-css-url` `<string>` +- `-compiler.define` `<name>` `<value>` -- Allows defining compile-time constants (i.e. `COMPILE::JS`, `CONFIG::debug`) +- `-compiler.enable-runtime-design-layers` +- `-compiler.es` +- `-compiler.exclude-defaults-css-files` `[filename]` `[...]` +- `-compiler.external-library-path` `[path-element]` `[...]` +- `-compiler.fonts.advanced-anti-aliasing` +- `-compiler.fonts.languages.language-range` `<lang>` `<range>` +- `-compiler.fonts.local-font-paths` `[path-element]` `[...]` +- `-compiler.fonts.local-fonts-snapshot` `<string>` +- `-compiler.fonts.managers` `[manager-class]` `[...]` +- `-compiler.fonts.max-cached-fonts` `<string>` +- `-compiler.fonts.max-glyphs-per-face` `<string>` +- `-compiler.fxg-base-class` `<string>` +- `-compiler.headless-server` +- `-compiler.include-libraries` `[library]` `[...]` +- `-compiler.info.royale` +- `-compiler.isolate-styles` +- [`-compiler.js-define`](compiler/compiler-options#js-define) +- `-compiler.js-external-library-path` `[path-element]` `[...]` +- `-compiler.js-library-path` `[path-element]` `[...]` +- `-compiler.js-namespaces.namespace` `[uri]` `[manifest]` `[...]` +- `-compiler.keep-all-type-selectors` +- `-compiler.keep-as3-metadata` `[name]` `[...]` +- `-compiler.keep-code-with-metadata` `[name]` `[...]` +- `-compiler.library-path` `[path-element]` `[...]` +- `-compiler.locale` `[locale-element]` `[...]` +- `-compiler.minimum-supported-version` `<string>` +- `-compiler.mobile` +- `-compiler.mxml.children-as-data` +- `-compiler.mxml.compatibility-version` `<version>` +- `-compiler.mxml.force-local-id` +- `-compiler.mxml.imports` `[implicit-import]` `[...]` +- `-compiler.mxml.minimum-supported-version` `<string>` +- `-compiler.namespaces.namespace` `[uri]` `[manifest]` `[...]` +- `-compiler.omit-trace-statements` +- `-compiler.optimize` -- Optimizes the bytecode of a generated _.swf_ file. +- `-compiler.preloader` `<string>` +- `-compiler.proxy-base-class` `<string>` +- `-compiler.remove-dead-code` +- `-compiler.report-invalid-styles-as-warnings` +- `-compiler.report-missing-required-skin-parts-as-warnings` +- `-compiler.services` `<filename>` +- `-compiler.show-actionscript-warnings` +- [`-compiler.show-binding-warnings`](compiler/compiler-options#show-binding-warnings) +- `-compiler.show-invalid-css-property-warnings` +- `-compiler.show-multiple-definition-warnings` +- `-compiler.show-shadowed-device-font-warnings` +- `-compiler.show-unused-type-selector-warnings` +- `-compiler.source-path` `[path-element]` `[...]` +- `-compiler.states-class` `<string>` +- `-compiler.states-event-override-class` `<string>` +- `-compiler.states-instance-override-class` `<string>` +- `-compiler.states-property-override-class` `<string>` +- `-compiler.states-style-override-class` `<string>` +- `-compiler.strict` +- [`-compiler.strict-identifier-names`](compiler/compiler-options#strict-identifier-names) +- `-compiler.strict-xml` -- Enables stricter rules for XML and E4X. +- `-compiler.swf-external-library-path` `[path-element]` `[...]` +- `-compiler.swf-library-path` `[path-element]` `[...]` +- [`-compiler.targets` `[target]` `[...]`](compiler/compiler-options#targets) +- `-compiler.theme` `[filename]` `[...]` +- `-compiler.verbose-stacktraces` +- `-compiler.warn-array-tostring-changes` +- `-compiler.warn-assignment-within-conditional` +- `-compiler.warn-bad-array-cast` +- `-compiler.warn-bad-bool-assignment` +- `-compiler.warn-bad-date-cast` +- `-compiler.warn-bad-es3-type-method` +- `-compiler.warn-bad-es3-type-prop` +- `-compiler.warn-bad-nan-comparison` +- `-compiler.warn-bad-null-assignment` +- `-compiler.warn-bad-null-comparison` +- `-compiler.warn-bad-undefined-comparison` +- `-compiler.warn-boolean-constructor-with-no-args` +- `-compiler.warn-changes-in-resolve` +- `-compiler.warn-class-is-sealed` +- `-compiler.warn-const-not-initialized` +- `-compiler.warn-constructor-returns-value` +- `-compiler.warn-deprecated-event-handler-error` +- `-compiler.warn-deprecated-function-error` +- `-compiler.warn-deprecated-property-error` +- `-compiler.warn-duplicate-argument-names` +- `-compiler.warn-duplicate-variable-def` +- `-compiler.warn-for-var-in-changes` +- `-compiler.warn-import-hides-class` +- `-compiler.warn-instance-of-changes` +- `-compiler.warn-internal-error` +- `-compiler.warn-level-not-supported` +- `-compiler.warn-missing-namespace-decl` +- `-compiler.warn-negative-uint-literal` +- `-compiler.warn-no-constructor` +- `-compiler.warn-no-explicit-super-call-in-constructor` +- `-compiler.warn-no-type-decl` +- `-compiler.warn-number-from-string-changes` +- `-compiler.warn-scoping-change-in-this` +- `-compiler.warn-slow-text-field-addition` +- `-compiler.warn-this-within-closure` +- `-compiler.warn-unlikely-function-value` +- `-compiler.warn-xml-class-has-changed` +- `-debug-password` `<string>` +- `-default-background-color` `<int>` -- Sets the initial stage color of a generated _.swf_ file. +- `-default-frame-rate` `<int>` -- Sets the initial frame rate of a generated _.swf_ file. +- `-default-script-limits` `<max-recursion-depth>` `<max-execution-time>` +- `-default-size` `<width>` `<height>` -- Sets the default stage width and height of a generated _.swf_ file. +- `-dependency-graph` `<filename>` +- `-dump-config` `<filename>` +- `-error-problems` `[class]` `[...]` +- `-exclude-native-js-libraries` +- [`-export-internal-symbols`](compiler/compiler-options#export-internal-symbols) +- [`-export-protected-symbols`](compiler/compiler-options#export-protected-symbols) +- [`-export-public-symbols`](compiler/compiler-options#export-public-symbols) +- `-external-js-lib` `[path-element]` `[...]` +- `-externs` `[symbol]` `[...]` +- `-externs-report` `<filename>` +- `-frames.frame` `[label]` `[classname]` `[...]` +- `-help` `[keyword]` `[...]` -- Displays compiler usage instructions. +- [`-html-output-filename` `<filename>`](compiler/compiler-options#html-output-filename) +- [`-html-template` `<filename>`](compiler/compiler-options#html-template) +- `-ignore-problems` `[class]` `[...]` +- `-include-inheritance-dependencies-only` +- `-include-resource-bundles` `[bundle]` `[...]` +- `-includes` `[symbol]` `[...]` +- [`-inline-constants`](compiler/compiler-options#inline-constants) +- `-js-compiler-define` `<name>` `<value>` +- [`-js-compiler-option` `[option]` `[...]`](compiler/compiler-options#js-compiler-option) +- `-js-complex-implicit-coercions` +- [`-js-default-initializers`](compiler/compiler-options#js-default-initializers) +- [`-js-dynamic-access-unknown-members`](compiler/compiler-options#js-dynamic-access-unknown-members) +- `-js-getter-prefix` `<string>` -- Sets the string used as a prefix for getter functions in the generated _.js_ files. +- [`-js-load-config` `<filename>`](compiler/compiler-options#js-load-config) +- [`-js-output` `<filename>`](compiler/compiler-options#js-output) -- Sets the output directory path of the generated _.js_ files. +- `-js-output-optimization` `[optimization]` `[...]` +- `-js-output-type` `<string>` +- `-js-resolve-uncertain` +- `-js-setter-prefix` `<string>` -- Sets the string used as a prefix for setter functions in the generated _.js_ files. +- [`-js-vector-emulation-class` `<string>`](compiler/compiler-options#js-vector-emulation-class) -- Sets the type used to emulate the ActionScript 3.0 `Vector` class in the generated _.js_ files. +- `-js-vector-index-checks` +- [`-jsx-factory` `<string>`](compiler/compiler-options#jsx-factory) +- [`-keep-asdoc`](compiler/compiler-options#keep-asdoc) +- `-link-report` `<filename>` -- Generates a linkage report of the symbols included in the output. +- `-load-config` `<filename>` -- Loads an XML configuration file that specifies more compiler options to use. +- `-load-externs` `<filename>` +- `-marmotinni` `<string>` +- `-metadata.contributor` `<name>` +- `-metadata.creator` `<name>` +- `-metadata.date` `<text>` +- `-metadata.dateFormat` `<text>` +- `-metadata.description` `<text>` +- `-metadata.language` `<code>` +- `-metadata.localized-description` `<text>` `<lang>` +- `-metadata.localized-title` `<title>` `<lang>` +- `-metadata.publisher` `<name>` +- `-metadata.title` `<text>` +- `-module-output` `<filename>` +- `-mxml-reflect-object-property` +- `-output` `<filename>` -- Sets the output path of a generated _.swf_ file. +- [`-prevent-rename-internal-instance-accessors`](compiler/compiler-options#prevent-rename-internal-instance-accessors) +- [`-prevent-rename-internal-instance-methods`](compiler/compiler-options#prevent-rename-internal-instance-methods) +- [`-prevent-rename-internal-instance-variables`](compiler/compiler-options#prevent-rename-internal-instance-variables) +- [`-prevent-rename-internal-static-accessors`](compiler/compiler-options#prevent-rename-internal-static-accessors) +- [`-prevent-rename-internal-static-methods`](compiler/compiler-options#prevent-rename-internal-static-methods) +- [`-prevent-rename-internal-static-variables`](compiler/compiler-options#prevent-rename-internal-static-variables) +- [`-prevent-rename-internal-symbols`](compiler/compiler-options#prevent-rename-internal-symbols) +- `-prevent-rename-mxml-symbol-references` +- [`-prevent-rename-protected-instance-accessors`](compiler/compiler-options#prevent-rename-protected-instance-accessors) +- [`-prevent-rename-protected-instance-methods`](compiler/compiler-options#prevent-rename-protected-instance-methods) +- [`-prevent-rename-protected-instance-variables`](compiler/compiler-options#prevent-rename-protected-instance-variables) +- [`-prevent-rename-protected-static-accessors`](compiler/compiler-options#prevent-rename-protected-static-accessors) +- [`-prevent-rename-protected-static-methods`](compiler/compiler-options#prevent-rename-protected-static-methods) +- [`-prevent-rename-protected-static-variables`](compiler/compiler-options#prevent-rename-protected-static-variables) +- [`-prevent-rename-protected-symbols`](compiler/compiler-options#prevent-rename-protected-symbols) +- [`-prevent-rename-public-instance-accessors`](compiler/compiler-options#prevent-rename-public-instance-accessors) +- [`-prevent-rename-public-instance-methods`](compiler/compiler-options#prevent-rename-public-instance-methods) +- [`-prevent-rename-public-instance-variables`](compiler/compiler-options#prevent-rename-public-instance-variables) +- [`-prevent-rename-public-static-accessors`](compiler/compiler-options#prevent-rename-public-static-accessors) +- [`-prevent-rename-public-static-methods`](compiler/compiler-options#prevent-rename-public-static-methods) +- [`-prevent-rename-public-static-variables`](compiler/compiler-options#prevent-rename-public-static-variables) +- [`-prevent-rename-public-symbols`](compiler/compiler-options#prevent-rename-public-symbols) +- `-raw-metadata` `<text>` +- [`-remove-circulars`](compiler/compiler-options#remove-circulars) -- Writes _.js_ dependencies in a way that satisfies the Google Closure Compiler. Use this if you have circular dependencies. +- `-remove-unused-rsls` +- `-resource-bundle-list` `<filename>` +- `-runtime-shared-libraries` `[url]` `[...]` +- `-runtime-shared-library-path` `[path-element]` `[rsl-url]` `[policy-file-url]` `[rsl-url]` `[policy-file-url]` +- `-runtime-shared-library-settings.application-domain` `[path-element]` `[application-domain-target]` `[...]` +- `-runtime-shared-library-settings.force-rsls` `[path-element]` `[...]` +- `-sdk-js-lib` `[path-element]` `[...]` +- `-size-report` `<filename>` +- [`-skip-transpile`](compiler/compiler-options#skip-transpile) +- [`-source-map`](compiler/compiler-options#source-map) +- [`-source-map-source-root` `<string>`](compiler/compiler-options#source-map-source-root) +- `-static-link-runtime-shared-libraries` +- `-strict-publish` +- `-swf-debugfile-alias` `<filename>` +- `-swf-version` `<int>` +- `-target-player` `<version>` +- `-tools-locale` `<string>` +- `-use-direct-blit` +- `-use-flashbuilder-project-files` +- `-use-gpu` +- `-use-network` +- `-verify-digests` +- `-version` +- [`-warn-public-vars`](compiler/compiler-options#warn-public-vars) -- Controls a compile-time warning for public variables that are not accessors. +- `-warning-problems` `[class]` `[...]` +- `-warnings` -- Determines if compile-time warnings are enabled. ### allow-abstract-classes {#allow-abstract-classes} @@ -110,22 +284,47 @@ Determines if the `private` namespace may be used with class constructors. For m -allow-private-constructors ``` -### strict-identifier-names {#strict-identifier-names} +### closure-lib {#closure-lib} -Determines if names of identifiers must follow the strict rules of ActionScript 3.0, or if they may use the looser rules introduced in ECMAScript 5. Defaults to `false`. +Sets the path to a custom distribution of Google's Closure library, instead of the default version used by the compiler. ```sh --strict-identifier-names +-closure-lib path/to/closure ``` -## JavaScript compiler options - -### closure-lib {#closure-lib} +### js-define {#js-define} -Sets the path to a custom distribution of Google's Closure library, instead of the default version used by the compiler. +Defines a global constant at compile time. May be a boolean, number, string, or expression. ```sh --closure-lib path/to/closure +-define CONFIG::debugging true -js-define CONFIG::release false +``` + +For boolean and numeric values, you may pass in literals like true, false, or 123. Format string values with nested quotes, like "'hello'", because the compiler will attempt to evaluate an expression when it encounters a quotation mark. + +#### Maven configuration: + +```xml +<defines> + <property> + <name>BUILD::buildNumber</name> + <value>'"${buildTimestamp}"'</value> + </property> + <property> + <name>BUILD::buildVersion</name> + <value>'"${project.version}"'</value> + </property> +</defines> +``` + +Then in AS3 you can do: + +```as3 +// Build Number +private static var _buildNumber:String = BUILD::buildNumber; + +// Project Version +private static var _projectVersion:String = BUILD::buildVersion; ``` ### html-output-filename {#html-output-filename} @@ -194,29 +393,15 @@ Note that some reflection utility functions require this to be set to true in or <additionalCompilerOptions>-js-default-initializers=true;</additionalCompilerOptions> ``` -### js-dynamic-access-unknown-members {#js-dynamic-access-unknown-members} - -If the definition of a member cannot be resolved at compile time, emit dynamic access instead of normal member access. Ensures that dynamic members aren't renamed. - -```sh --js-dynamic-access-unknown-members -``` - -#### Maven configuration: - -```xml -<additionalCompilerOptions>-js-dynamic-access-unknown-members=true;</additionalCompilerOptions> -``` - ### js-define {#js-define} -Defines a global constant at compile time for the JavaScript output. May be a boolean, number, string, or expression. +Defines a global constant at compile time for the JavaScript output, but not the SWF output. May be a boolean, number, string, or expression. ```sh -js-define CONFIG::debugging true -js-define CONFIG::release false ``` -For Boolean and numeric values, you may pass in literals like true, false, or 123. Format string values with nested quotes, like "'hello'", because the compiler will attempt to evaluate an expression when it encounters a quotation mark. +For boolean and numeric values, you may pass in literals like true, false, or 123. Format string values with nested quotes, like "'hello'", because the compiler will attempt to evaluate an expression when it encounters a quotation mark. #### Maven configuration: @@ -237,10 +422,24 @@ Then in AS3 you can do: ```as3 // Build Number -private static var _buildNumber :String = BUILD::buildNumber; +private static var _buildNumber:String = BUILD::buildNumber; // Project Version -private static var _projectVersion :String = BUILD::buildVersion; +private static var _projectVersion:String = BUILD::buildVersion; +``` + +### js-dynamic-access-unknown-members {#js-dynamic-access-unknown-members} + +If the definition of a member cannot be resolved at compile time, emit dynamic access instead of normal member access. Ensures that dynamic members aren't renamed. + +```sh +-js-dynamic-access-unknown-members +``` + +#### Maven configuration: + +```xml +<additionalCompilerOptions>-js-dynamic-access-unknown-members=true;</additionalCompilerOptions> ``` ### js-load-config {#js-load-config} @@ -307,113 +506,6 @@ Determines if asdoc comment annotations are kept in the generated JavaScript. <additionalCompilerOptions>-keep-asdoc=false;</additionalCompilerOptions> ``` -### remove-circulars {#remove-circulars} - -Tells the Apache Royale compiler to remove circular dependencies in the generated JavaScript, where possible. - -```sh --remove-circulars -``` - -#### Maven configuration: - -```xml -<removeCirculars>true</removeCirculars> -``` - -### show-binding-warnings {#show-binding-warnings} - -Set to false to remove all binding warnings. - -```sh --show-binding-warnings=false -``` - -#### Maven configuration: - -```xml -<additionalCompilerOptions>-show-binding-warnings=false;</additionalCompilerOptions> -``` - -### skip-transpile {#skip-transpile} - -**(Advanced)** Set to false to skip transpiling ActionScript and MXML to JavaScript, and only run the release build. Generally used by contributors to the compiler only. Default s to `false`. - -```sh --skip-transpile=true -``` - -#### Maven configuration: - -```xml -<additionalCompilerOptions>-skip-transpile=true;</additionalCompilerOptions> -``` - -### source-map {#source-map} - -Emits a source map in the debug build for each ActionScript file. The default value is false. - -```sh --source-map -``` - -#### Maven configuration: - -```xml -<additionalCompilerOptions>-source-map=true;</additionalCompilerOptions> -``` - -### source-map-source-root {#source-map-source-root} - -Sets a custom value for the `sourceRoot` property in the generated source map files. This option will be ignored if the `source-map` compiler option is `false`. - -```sh --source-map-source-root=my/custom/path -``` - -#### Maven configuration: - -```xml -<additionalCompilerOptions>-source-map-source-root=my/custom/path;</additionalCompilerOptions> -``` - -### targets {#targets} - -Specifies the target format of the code generated by the Apache Royale compiler. You can specify multiple targets. - -```sh --targets JSRoyale,SWF -``` - -The compiler supports the following values for "targets": - -- "JSRoyale" -- "JS" -- "JSNode" -- "JSNodeModule" -- "SWF" - -#### Maven configuration: - -```xml -<targets>JSRoyale</targets> -``` - -### warn-public-vars {#warn-public-vars} - -Enables or disables warnings about using public variables when it may be considered dangerous to use them. - -```sh --warn-public-vars -``` - -#### Maven configuration: - -```xml -<additionalCompilerOptions>-warn-public-vars=true;</additionalCompilerOptions> -``` - - ## Reduce size of release builds The following compiler options may be used to reduce the output size of JavaScript release builds. However, using these options may also prevent certain coding patterns in ActionScript and JavaScript from working correctly, so use with caution. @@ -432,6 +524,8 @@ In a release build, determines if symbols in the `public` namespace will be expo -export-public-symbols=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -446,6 +540,8 @@ In a release build, determines if symbols in the `protected` namespace will be e -export-protected-symbols=true ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -460,6 +556,8 @@ In a release build, determines if symbols in the `internal` namespace will be ex -export-internal-symbols=true ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -474,6 +572,8 @@ In a release build, determines if symbols in the `public` namespace may be renam -prevent-rename-public-symbols=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -499,6 +599,8 @@ In a release build, determines if symbols in the `protected` namespace may be re -prevent-rename-protected-symbols=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -524,6 +626,8 @@ In a release build, determines if symbols in the `internal` namespace may be ren -prevent-rename-internal-symbols=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -549,6 +653,8 @@ In a release build, determines if static methods in the `public` namespace may b -prevent-rename-public-static-methods=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -563,6 +669,8 @@ In a release build, determines if instance (non-static) methods in the `public` -prevent-rename-public-instance-methods=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -577,6 +685,8 @@ In a release build, determines if static variables in the `public` namespace may -prevent-rename-public-static-variables=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -591,6 +701,8 @@ In a release build, determines if instance (non-static) variables in the `public -prevent-rename-public-instance-variables=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -605,6 +717,8 @@ In a release build, determines if static accessors (getters and setters) in the -prevent-rename-public-static-accessors=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -619,6 +733,8 @@ In a release build, determines if instance (non-static) accessors (getters and s -prevent-rename-public-instance-accessors=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -633,6 +749,8 @@ In a release build, determines if static methods in the `protected` namespace ma -prevent-rename-protected-static-methods=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -647,6 +765,8 @@ In a release build, determines if instance (non-static) methods in the `protecte -prevent-rename-protected-instance-methods=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -661,6 +781,8 @@ In a release build, determines if static variables in the `protected` namespace -prevent-rename-protected-static-variables=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -675,6 +797,8 @@ In a release build, determines if instance (non-static) variables in the `protec -prevent-rename-protected-instance-variables=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -689,6 +813,8 @@ In a release build, determines if static accessors (getters and setters) in the -prevent-rename-protected-static-accessors=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -703,6 +829,8 @@ In a release build, determines if instance (non-static) accessors (getters and s -prevent-rename-protected-instance-accessors=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -717,6 +845,8 @@ In a release build, determines if static methods in the `internal` namespace may -prevent-rename-internal-static-methods=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -731,6 +861,8 @@ In a release build, determines if instance (non-static) methods in the `internal -prevent-rename-internal-instance-methods=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -745,6 +877,8 @@ In a release build, determines if static variables in the `internal` namespace m -prevent-rename-internal-static-variables=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -759,6 +893,8 @@ In a release build, determines if instance (non-static) variables in the `intern -prevent-rename-internal-instance-variables=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -773,6 +909,8 @@ In a release build, determines if static accessors (getters and setters) in the -prevent-rename-internal-static-accessors=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml @@ -787,8 +925,124 @@ In a release build, determines if instance (non-static) accessors (getters and s -prevent-rename-internal-instance-accessors=false ``` +> Note: This option applies only to compiling applications using `mxmlc`. If you are compiling a library (using `compc`), this option does not exist, and you will get a warning if you try to use it. + #### Maven configuration: ```xml <additionalCompilerOptions>-prevent-rename-internal-instance-accessors=false;</additionalCompilerOptions> -``` \ No newline at end of file +``` + +### remove-circulars {#remove-circulars} + +Tells the Apache Royale compiler to remove circular dependencies in the generated JavaScript, where possible. + +```sh +-remove-circulars +``` + +#### Maven configuration: + +```xml +<removeCirculars>true</removeCirculars> +``` + +### show-binding-warnings {#show-binding-warnings} + +Set to false to remove all binding warnings. + +```sh +-show-binding-warnings=false +``` + +#### Maven configuration: + +```xml +<additionalCompilerOptions>-show-binding-warnings=false;</additionalCompilerOptions> +``` + +### skip-transpile {#skip-transpile} + +**(Advanced)** Set to false to skip transpiling ActionScript and MXML to JavaScript, and only run the release build. Generally used by contributors to the compiler only. Default s to `false`. + +```sh +-skip-transpile=true +``` + +#### Maven configuration: + +```xml +<additionalCompilerOptions>-skip-transpile=true;</additionalCompilerOptions> +``` + +### strict-identifier-names {#strict-identifier-names} + +Determines if names of identifiers must follow the strict rules of ActionScript 3.0, or if they may use the looser rules introduced in ECMAScript 5. Defaults to `false`. + +```sh +-strict-identifier-names +``` + +### source-map {#source-map} + +Emits a source map in the debug build for each ActionScript file. The default value is false. + +```sh +-source-map +``` + +#### Maven configuration: + +```xml +<additionalCompilerOptions>-source-map=true;</additionalCompilerOptions> +``` + +### source-map-source-root {#source-map-source-root} + +Sets a custom value for the `sourceRoot` property in the generated source map files. This option will be ignored if the `source-map` compiler option is `false`. + +```sh +-source-map-source-root=my/custom/path +``` + +#### Maven configuration: + +```xml +<additionalCompilerOptions>-source-map-source-root=my/custom/path;</additionalCompilerOptions> +``` + +### targets {#targets} + +Specifies the target format of the code generated by the Apache Royale compiler. You can specify multiple targets. + +```sh +-targets JSRoyale,SWF +``` + +The compiler supports the following values for "targets": + +- "JSRoyale" +- "JS" +- "JSNode" +- "JSNodeModule" +- "SWF" + +#### Maven configuration: + +```xml +<targets>JSRoyale</targets> +``` + +### warn-public-vars {#warn-public-vars} + +Enables or disables warnings about using public variables when it may be considered dangerous to use them. + +```sh +-warn-public-vars +``` + +#### Maven configuration: + +```xml +<additionalCompilerOptions>-warn-public-vars=true;</additionalCompilerOptions> +```