Sha256: 98c830484d24196cdbe31f2b703fc05d698eb58b5ed882e0a42876a66277a21e
Contents?: true
Size: 1.84 KB
Versions: 4
Compression:
Stored size: 1.84 KB
Contents
module Airake #:nodoc: module Commands #:nodoc: # ACOMPC (Air component compiler) # # http://livedocs.adobe.com/labs/flex3/html/help.html?content=CommandLineTools_3.html class Acompc < Base attr_reader :path, :extra_opts, :source_path, :include_packages, :output_path # Initialize command # # options:: :acompc_path, :acompc_extra_opts, :source_path, :include_packages, :output_path # # :include_packages: # com.airake.utils will include all classes from Dir["com/airake/utils/**/*.as"] def initialize(options = {}) @path = options[:acompc_path] || "acompc" @extra_opts = options[:acompc_extra_opts] with_options(options, { :source_path => "src" }) assert_required([ :path, :source_path, :output_path, :include_packages ]) @include_classes = include_classes end # Find classes list from packages, raises error if result is empty def include_classes classes = [] paths = [] @include_packages.each do |include_package| path = File.join(@source_path, include_package.gsub(".", "/")) + "/**/*.as" paths << path Dir[path].each do |file| classes << include_package + "." + File.basename(file).gsub(".as", "") end end raise "No classes found at:\n\t#{paths.join("\n\t")}" if classes.empty? classes end # Get the acompc compile command def compile command = [] command << @path command << "-source-path" command << @source_path command << "-include-classes" command << @include_classes.join(" ") command << "-output" command << @output_path process(command) end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
airake-0.2.10 | lib/airake/commands/acompc.rb |
airake-0.2.11 | lib/airake/commands/acompc.rb |
airake-0.2.12 | lib/airake/commands/acompc.rb |
airake-0.2.9 | lib/airake/commands/acompc.rb |