class Variable
Public Class Methods
new(keyword="", name="", type="")
click to toggle source
# File lib/AnalyzedClass.rb, line 116 def initialize (keyword="", name="", type="") @keyword = keyword @name = name @type = type end
Public Instance Methods
beginningIndex(line)
click to toggle source
# File lib/AnalyzedClass.rb, line 199 def beginningIndex (line) index = 0 if line.include? "var " index = (line.index("var ") + 4) elsif line.include? "let " index = (line.index("let ") + 4) end return index end
keyword()
click to toggle source
# File lib/AnalyzedClass.rb, line 130 def keyword @keyword end
name()
click to toggle source
# File lib/AnalyzedClass.rb, line 122 def name @name end
type()
click to toggle source
# File lib/AnalyzedClass.rb, line 126 def type @type end
variableForLine(line)
click to toggle source
# File lib/AnalyzedClass.rb, line 134 def variableForLine (line) if !(line.include? "let ") and !(line.include? "var ") return nil end index = beginningIndex line variableKeyword = variableKeyword line varName = variableName index, line type = variableType line, varName return Variable.new variableKeyword, varName, type end
variableKeyword(line)
click to toggle source
# File lib/AnalyzedClass.rb, line 209 def variableKeyword (line) if line.include? "var " return "var" end return "let" end
variableName(index, line)
click to toggle source
# File lib/AnalyzedClass.rb, line 216 def variableName (index, line) varName = "" if line.include? ":" and !(line.include? "=") varName = line.slice(index..(line.index(":")-1)) elsif temp = line temp = temp[index..-1] whiteSpaceIndex = temp.index(" ") equalsIndex = temp.index("=") if equalsIndex == nil equalsIndex = 9999 end colonIndex = temp.index(":") endStringSliceIndex = whiteSpaceIndex if whiteSpaceIndex > equalsIndex endStringSliceIndex = equalsIndex end varName = temp.slice(0..endStringSliceIndex) if varName.include? ":" varName = varName.slice(0..varName.index(":")-1) end end return varName.strip end
variableType(line, variableName)
click to toggle source
# File lib/AnalyzedClass.rb, line 147 def variableType (line, variableName) if variableName == nil or line.include? "[" return nil end if (line.include? "=" and line.include? "(") if line.include? "." indexDot = line.index(".") indexParen = line.index("(") if indexParen < indexDot index = line.index("=") temp = line[index+1..-1] temp = temp.strip temp = temp.slice(0..(temp.index("(") - 1)).strip if temp.index("(") != 0 type = temp.strip return type end end else index = line.index("=") temp = line[index+1..-1] type = temp.slice(0..(temp.index("(") - 1)).strip return type end elsif line.include? ":" index = line.index(":") temp = line[index+1..-1].strip if temp.include? "!" temp = temp[0..-2] end if temp.include? "?" temp = temp[0..-2] end if temp.include? "]" temp = temp[0..temp.index("]")] end if temp.include? " " temp = temp[0..temp.index(" ")] end return temp end return nil end