Sha256: 9f708b73fd26b2b5a4ec6297842d2a62f30d2cf7a5ad389995d8217a70228fba

Contents?: true

Size: 1.35 KB

Versions: 4

Compression:

Stored size: 1.35 KB

Contents

# NodeJS's configuration
# Node will be treated as a separate programming language for now

Inch::Config.register(:nodejs) do
  codebase do
    object_provider :JSDoc
    include_files   ['src/**/*.js']
    exclude_files   []
  end

  evaluation do
    schema(:MemberObject) do
      docstring           1.0

      # optional:
      code_example_single 0.1
      code_example_multi  0.2
      unconsidered_tag    0.2
    end

    schema(:ModuleObject) do
      docstring           1.0

      # optional:
      code_example_single 0.1
      code_example_multi  0.2
      unconsidered_tag    0.2
    end

    schema(:ClassObject) do
      docstring           1.0

      # optional:
      code_example_single 0.1
      code_example_multi  0.2
      unconsidered_tag    0.2
    end

    schema(:FunctionObject) do
      docstring           0.5
      parameters          0.4
      return_type         0.1
      return_description  0.3

      if object.questioning_name?
        parameters          parameters + return_type
        return_type         0.0
      end

      if !object.has_parameters? || object.setter?
        return_description  docstring + parameters
        docstring           docstring + parameters
        parameters          0.0
      end

      # optional:
      code_example_single 0.1
      code_example_multi  0.25
      unconsidered_tag    0.2
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
inch-0.5.10 config/nodejs.rb
inch-0.5.9 config/nodejs.rb
inch-0.5.8 config/nodejs.rb
inch-0.5.7 config/nodejs.rb