Home Manual Reference Source Test Repository
public class | source

ESComplexModule

Provides a runtime to invoke ESComplexModule plugins for processing / metrics calculations of independent modules.

Constructor Summary

Public Constructor
public

constructor(options: object)

Initializes ESComplexModule.

Member Summary

Private Members
private

Provides dispatch methods to all module plugins.

Method Summary

Public Methods
public

analyze(ast: object | Array, options: object): ModuleReport

Processes the given ast and calculates metrics via plugins.

public

analyzeAsync(ast: object | Array, options: object): Promise<ModuleReport>

Wraps in a Promise processing the given ast and calculates metrics via plugins.

Public Constructors

public constructor(options: object) source

Initializes ESComplexModule.

Params:

NameTypeAttributeDescription
options object

module options including user plugins to load including:

(boolean)         loadDefaultPlugins - When false ESComplexModule will not load any default plugins.
(Array<Object>)   plugins - A list of ESComplexModule plugins that have already been instantiated.

Private Members

private _plugins: Plugins source

Provides dispatch methods to all module plugins.

Public Methods

public analyze(ast: object | Array, options: object): ModuleReport source

Processes the given ast and calculates metrics via plugins.

Params:

NameTypeAttributeDescription
ast object | Array

Javascript AST.

options object

(Optional) module analyze options.

Return:

ModuleReport

A single module report.

public analyzeAsync(ast: object | Array, options: object): Promise<ModuleReport> source

Wraps in a Promise processing the given ast and calculates metrics via plugins.

Params:

NameTypeAttributeDescription
ast object | Array

Javascript AST.

options object

(Optional) module analyze options.

Return:

Promise<ModuleReport>

A single module report.