Class: Languages::Ruby::ExternRequirementRuby

Inherits:
ExternRequirement show all
Defined in:
lib/kuniri/language/ruby/extern_requirement_ruby.rb

Overview

ExternRequirement Handling extern requirements.

Instance Method Summary collapse

Instance Method Details

#detect_extern_requirement(pLine) ⇒ Object (protected)

Override



29
30
31
32
33
# File 'lib/kuniri/language/ruby/extern_requirement_ruby.rb', line 29

def detect_extern_requirement(pLine)
  regexExpression = /^\s*require(?:_relative)?\s+('|")(.*)\1/
  return nil unless pLine =~ regexExpression
  return pLine.scan(regexExpression).join("")
end

#get_requirement(pLine) ⇒ Object

Get Ruby requirement.

See Also:



15
16
17
18
19
20
21
22
23
24
# File 'lib/kuniri/language/ruby/extern_requirement_ruby.rb', line 15

def get_requirement(pLine)
  detectExpression = detect_extern_requirement(pLine)
  return nil unless detectExpression

  detectExpression = remove_unnecessary_information(detectExpression)
  # @requirement = detectExpression
  name = File.basename(detectExpression, ".*")
  externReference = ExternRequirementData.new(name)
  return externReference
end

#remove_unnecessary_information(pLine) ⇒ Object (protected)

Override



36
37
38
39
40
# File 'lib/kuniri/language/ruby/extern_requirement_ruby.rb', line 36

def remove_unnecessary_information(pLine)
  regexClean = /\s+|"|'/
  return pLine.gsub!(regexClean, "") if pLine =~ regexClean
  return pLine
end