0 Replies Latest reply on Aug 21, 2008 9:02 AM by (Paul_Reilly)

    [svn] 2945: Optimized ASC Context access.

    Level 1
      Revision: 2945
      Author: preilly@adobe.com
      Date: 2008-08-21 10:02:53 -0700 (Thu, 21 Aug 2008)

      Log Message:
      -----------
      Optimized ASC Context access. During a normal compilation, we do a
      truck load of CompilerContext.getAttribute("cx") calls. This change
      adds a strongly typed variable for the ASC Context to the
      CompilerContext and accessors for it. By not having to do a HashMap
      lookup for each access, we save alot of time. For example, with a
      full compile of the Hospital App, we shave off about 4 seconds or
      about 3%.

      tests Passed: checkintests

      Needs QA: YES

      Needs DOC: NO

      API Change: NO

      Reviewer: pfarland

      Code-level description of changes:

      CompilerContext.java

      Added ascContext variable and getAscContext(), setAscContext(),
      and removeAscContext() methods.

      Modified clear() and setAttributes() to handle ascContext.

      abc/AbcCompiler.java
      as3/EmbedExtension.java
      as3/genext/GenerativeExtension.java
      as3/managed/ManagedExtensionError.java
      as3/As3Compiler.java
      as3/SyntaxTreeEvaluator.java
      as3/binding/DataBindingExtension.java
      as3/StyleExtension.java
      as3/HostComponentExtension.java
      as3/SignatureExtension.java
      SymbolTable.java
      CompilerContext.java
      mxml/ImplementationCompiler.java
      mxml/InterfaceCompiler.java

      Updated to use new CompilerContext API's.

      Modified Paths:
      --------------
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/CompilerContext.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/SymbolTable.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/abc/AbcCompiler.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/As3Compiler.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/EmbedExtension.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/HostComponentExtension.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/SignatureExtension.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/StyleExtension.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/SyntaxTreeEvaluator.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/binding/DataBindingExtension. java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/genext/GenerativeExtension.ja va
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/managed/ManagedExtensionError .java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/ImplementationCompiler.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/InterfaceCompiler.java