class Orenono::Core
Constants
- ORENONO_FILE
- ORENONO_TEMPLATE
Public Instance Methods
bf_to_your_syntax(file)
click to toggle source
Convert Brainf*ck default syntax to your Orenonofile syntax
# File lib/orenono_core.rb, line 60 def bf_to_your_syntax(file) dsl = read_dsl code = read_code(file) config = dsl.orenono convert(code, config.default_syntaxes, config.syntaxes) end
execute(file)
click to toggle source
Execute brain f**k
# File lib/orenono_core.rb, line 52 def execute(file) dsl = read_dsl code = read_code(file) ob = Orenono::Brain.new(dsl.orenono, code) ob.run end
generate_code_from_ascii_text(ascii_text)
click to toggle source
Generate Brainf*ck code from ascii code text. If you create original syntax in Orenonofile, output syntax is your syntax.
# File lib/orenono_core.rb, line 69 def generate_code_from_ascii_text(ascii_text) config = read_dsl.orenono Generator.generate(ascii_text, config) end
init()
click to toggle source
Generate Orenonofile to current directory.
# File lib/orenono_core.rb, line 47 def init File.open(ORENONO_FILE, 'w') { |f|f.puts ORENONO_TEMPLATE } end
Private Instance Methods
convert(src, from_syntaxes, to_syntaxes)
click to toggle source
# File lib/orenono_core.rb, line 76 def convert(src, from_syntaxes, to_syntaxes) from_syntaxes.each_with_index do |syntax, i| src = src.gsub(syntax, to_syntaxes[i]) end src end
read_code(file)
click to toggle source
# File lib/orenono_core.rb, line 83 def read_code(file) File.open(file, 'r:utf-8') { |f|f.read } end
read_dsl()
click to toggle source
# File lib/orenono_core.rb, line 87 def read_dsl src = File.open(ORENONO_FILE) { |f|f.read } if File.exist?(ORENONO_FILE) dsl = Orenono::Dsl.new dsl.instance_eval src if File.exist?(ORENONO_FILE) dsl end