Skip to content

mxmlextrema/mxmlcaot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mxmlextrema::mxmlcaot

mxmlextrema::mxmlcaot is a Rust library for creating, inspecting and modifying the semantic data of the ActionScript 3 language ahead of time.

mxmlextrema::mxmlcaot implements three dimensional names, property lookup, conversion, number representation, interface implementation log, method overriding, applying parameterized types, environment variable cache, unused entity tracking, a factory, and several entities (for example, classes, methods and variables).

mxmlextrema::mxmlcaot does not include anything related to the Adobe Flex framework; these are implemented through a compiler.

Example

Create a package foo.bar and log its fully qualified name:

let db = Database::new(Default::default());
let foo_bar = db.factory().create_package(["foo", "bar"]);
println!("Package name: {}", foo_bar.fully_qualified_name());

Global object requisites

The minimum requisites for the framework globals so that the MXMLCAOT database does not emit an infinite DeferError includes defining the following classes. Ensure you have defined them; the properties and methods are not required within them in MXMLCAOT.

  • Object
  • Boolean
  • Number
  • int
  • uint
  • float
  • String
  • Array
  • Namespace
  • Function
  • Class
  • XML
  • XMLList
  • RegExp
  • Date
  • Promise.<T>
  • Vector.<T> (in the top-level package)
  • frameworkname.util.ByteArray
  • frameworkname.util.Dictionary
  • frameworkname.util.Proxy

License

Apache 2.0

About

ActionScript 3 AOT semantic model

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages