lib/nilac/replace_strings.rb in nilac-0.0.4.3.9.6 vs lib/nilac/replace_strings.rb in nilac-0.0.4.3.9.7
- old
+ new
@@ -1,35 +1,58 @@
- def replace_strings(input_string)
+# This is the simplest and most important method on the whole Nilac source code. This protects user written
+# strings from being overwritten during the compilation
- string_counter = 0
+def replace_strings(input_string)
- if input_string.count("\"") % 2 == 0
+ element = input_string.gsub("==", "equalequal")
- while input_string.include?("\"")
+ element = element.gsub("!=", "notequal")
- string_extract = input_string[input_string.index("\"")..input_string.index("\"",input_string.index("\"")+1)]
+ element = element.gsub("+=", "plusequal")
- input_string = input_string.sub(string_extract,"--repstring#{string_counter}")
+ element = element.gsub("-=", "minusequal")
- string_counter += 1
+ element = element.gsub("*=", "multiequal")
- end
+ element = element.gsub("/=", "divequal")
- end
+ element = element.gsub("%=", "modequal")
- if input_string.count("'") % 2 == 0
+ element = element.gsub("=~", "matchequal")
- while input_string.include?("'")
+ element = element.gsub(">=", "greatequal")
- string_extract = input_string[input_string.index("'")..input_string.index("'",input_string.index("'")+1)]
+ input_string = element.gsub("<=", "lessyequal")
- input_string = input_string.sub(string_extract,"--repstring#{string_counter}")
+ string_counter = 0
- string_counter += 1
+ if input_string.count("\"") % 2 == 0
- end
+ while input_string.include?("\"")
- end
+ string_extract = input_string[input_string.index("\"")..input_string.index("\"",input_string.index("\"")+1)]
- return input_string
+ input_string = input_string.sub(string_extract,"--repstring#{string_counter}")
+ string_counter += 1
+
end
+
+ end
+
+ if input_string.count("'") % 2 == 0
+
+ while input_string.include?("'")
+
+ string_extract = input_string[input_string.index("'")..input_string.index("'",input_string.index("'")+1)]
+
+ input_string = input_string.sub(string_extract,"--repstring#{string_counter}")
+
+ string_counter += 1
+
+ end
+
+ end
+
+ return input_string
+
+end