Commit 1a3bdbed authored by Rene Saarsoo's avatar Rene Saarsoo
Browse files

Move Accessors processing out of Aggregator.

parent 1496bf9a
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -3,6 +3,15 @@ require 'jsduck/logger'
module JsDuck

  class Accessors
    def initialize(classes)
      @classes = classes
    end

    # Generates accessors in all classes.
    def create_all!
      @classes.each_value {|cls| create(cls) }
    end

    # Given a class, generates accessor methods to configs with
    # @accessor tag.  Modifies the class by adding these methods.
    # When class already contains a getter or setter, the method is
+0 −9
Original line number Diff line number Diff line
require 'jsduck/class'
require 'jsduck/accessors'
require 'jsduck/logger'
require 'jsduck/override'

@@ -216,14 +215,6 @@ module JsDuck
      end
    end

    # Creates accessor method for configs marked with @accessor
    def create_accessors
      accessors = Accessors.new
      @classes.each_value do |cls|
        accessors.create(cls)
      end
    end

    # Processes all overrides.
    # Returns list of override classes.
    def process_overrides
+2 −1
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@ require 'jsduck/util/io'
require 'jsduck/source/file'
require 'jsduck/aggregator'
require 'jsduck/enum'
require 'jsduck/accessors'
require 'jsduck/class'
require 'jsduck/relations'
require 'jsduck/logger'
@@ -59,7 +60,7 @@ module JsDuck
      agr.classify_orphans
      agr.create_global_class
      agr.remove_ignored_classes
      agr.create_accessors
      Accessors.new(agr.classes).create_all!
      if @opts.ext4_events == true || (@opts.ext4_events == nil && agr.ext4?)
        agr.append_ext4_event_options
      end
+2 −1
Original line number Diff line number Diff line
require "jsduck/aggregator"
require "jsduck/source/file"
require "jsduck/accessors"

describe JsDuck::Aggregator do
  def parse(string)
    agr = JsDuck::Aggregator.new
    agr.aggregate(JsDuck::Source::File.new(string))
    agr.create_accessors
    JsDuck::Accessors.new(agr.classes).create_all!
    agr.result
  end