class AdLint::CompilerTraits

DESCRIPTION

Traits information of the compiler used in the project.

Attributes

arbitrary_substitutions[R]

VALUE

Hash<String, String > – The arbitrary code substitution settings.

arithmetic[R]

VALUE

CompilerTraits::Arithmetic – The arithmetic traits information.

extension_substitutions[R]

VALUE

Hash<String, String > – The compiler-extension code substitution settings.

file_search_paths[R]

VALUE

Array< String > – System include paths.

identifier_max[R]

VALUE

Integer – Max length of all symbols identified by the compiler.

initial_header[R]

VALUE

String – The file path of the initial source.

standard_types[R]

VALUE

CompilerTraits::StandardTypes – The standard type traits information.

Public Class Methods

new(doc) click to toggle source
# File lib/adlint/traits.rb, line 216
def initialize(doc)
  @initial_header    = doc["initial_header"]
  @file_search_paths = parse_compound_path_list(doc["file_search_paths"])
  @standard_types    = StandardTypes.new(doc["standard_types"])
  @arithmetic        = Arithmetic.new(doc["arithmetic"])
  @identifier_max    = doc["identifier_max"]

  @extension_substitutions = doc["extension_substitutions"] || {}
  @arbitrary_substitutions = doc["arbitrary_substitutions"] || {}
end

Public Instance Methods

entity_name() click to toggle source
# File lib/adlint/traits.rb, line 227
def entity_name
  "compiler_traits"
end
freeze() click to toggle source
Calls superclass method
# File lib/adlint/traits.rb, line 449
def freeze
  @file_search_paths.freeze
  @standard_types.freeze
  @arithmetic.freeze
  @identifier_max.freeze
  @extension_substitutions.freeze
  @arbitrary_substitutions.freeze
  super
end