Compare commits

..

No commits in common. '3b320fc5dadaf80beb43df2133ea5651206938ae' and 'ac76aa626c39b095fce618658c7e79d7ea274b4d' have entirely different histories.

  1. 12
      src/rustint/core.clj
  2. 33
      test/rustint/core_test.clj

@ -2178,10 +2178,7 @@
(not= next_token (symbol ";")) (not= next_token (symbol ";"))
(not= next_token (symbol ")")) (not= next_token (symbol ")"))
(> next_token_il 0) (> next_token_il 0)
;(not (palabra-reservada? next_token)) (not (palabra-reservada? next_token))
;(not (= 'if next_token))
; (not (= 'while next_token))
(not (= 'else next_token))
) )
) )
) )
@ -2279,7 +2276,12 @@
(and (and
(symbol? arg) (symbol? arg)
(not (palabra-reservada? arg)) (not (palabra-reservada? arg))
(not (nil? (re-matches #"_?[a-zA-Z][a-zA-Z0-9]*" (name arg)))) (contains?
(set
(map char (range 97 122))
)
(first (name arg))
)
) )
) )

@ -188,13 +188,6 @@
) )
) )
(deftest identificador-test05
(testing "Test 05 identificador"
(is (= (identificador? 'TRES) true))
)
)
(deftest palabra-reservada-test01 (deftest palabra-reservada-test01
(testing "Test 01 palabra reservada" (testing "Test 01 palabra reservada"
(is (= (palabra-reservada? 'while) true)) (is (= (palabra-reservada? 'while) true))
@ -969,31 +962,9 @@
(testing "Test main 02 agregar-ptocoma" (testing "Test main 02 agregar-ptocoma"
(is (= (is (=
(agregar-ptocoma (agregar-ptocoma
(list 'fn 'main (symbol "(") (symbol ")") (symbol "{") 'if 'x '< '0 (symbol "{") 'x '= '- 'x (symbol ";") 'x_cambio '= 'true (symbol ";") (symbol "}") 'print! (symbol "(") "y: " (symbol ")") (symbol ";") (symbol "}") ) (list 'fn 'main (symbol "(") (symbol ")") 'if 'x '< '0 (symbol "{") 'x '= '- 'x (symbol ";") 'x_cambio '= 'true (symbol ";") (symbol "}") 'print! (symbol "(") "y: " (symbol ")") (symbol ";") (symbol "}") )
)
(list 'fn 'main (symbol "(") (symbol ")") (symbol "{") 'if 'x '< '0 (symbol "{") 'x '= '- 'x (symbol ";") 'x_cambio '= 'true (symbol ";") (symbol "}") (symbol ";") 'print! (symbol "(") "y: " (symbol ")") (symbol ";") (symbol "}") )
))
)
)
(deftest test-agregar-ptocoma-03
(testing "Test main 03 agregar-ptocoma"
(is (=
(agregar-ptocoma
(list 'fn 'main (symbol "(") (symbol ")") (symbol "{") 'if 'x '< '0 (symbol "{") 'x '= '- 'x (symbol ";") 'x_cambio '= 'true (symbol ";") (symbol "}") 'print! (symbol "(") "y:_" (symbol ")") (symbol ";") 'let 'mut 'prod (symbol ":") 'i64 '= '0 (symbol ";") 'while 'y '> '0 (symbol "{") 'if 'y '% '2 '!= '0 (symbol "{") 'prod '+ '= 'x (symbol ";") (symbol "}") (symbol "}") 'if 'x_cambio (symbol "{") 'prod '= '- 'prod (symbol ";") (symbol "}") (symbol "}"))
)
(list 'fn 'main (symbol "(") (symbol ")") (symbol "{") 'if 'x '< '0 (symbol "{") 'x '= '- 'x (symbol ";") 'x_cambio '= 'true (symbol ";") (symbol "}") (symbol ";") 'print! (symbol "(") "y:_" (symbol ")") (symbol ";") 'let 'mut 'prod (symbol ":") 'i64 '= '0 (symbol ";") 'while 'y '> '0 (symbol "{") 'if 'y '% '2 '!= '0 (symbol "{") 'prod '+ '= 'x (symbol ";") (symbol "}") (symbol "}") (symbol ";") 'if 'x_cambio (symbol "{") 'prod '= '- 'prod (symbol ";") (symbol "}") (symbol "}"))
))
)
)
(deftest test-agregar-ptocoma-04
(testing "Test main 04 agregar-ptocoma"
(is (=
(agregar-ptocoma
(list 'fn 'main (symbol "(") (symbol ")") (symbol "{") 'let 'v (symbol ":") 'i64 (symbol ";") 'let 'mut 'w (symbol ":") 'i64 (symbol ";") 'if 'y '>= '0 (symbol "{") 'v '= 'y (symbol ";") 'w '= 'y (symbol ";") (symbol "}") 'else (symbol "{") 'v '= '- 'y (symbol ";") 'w '= '- 'y (symbol ";") (symbol "}") 'while 'w '<= 'r (symbol "{") 'w '= '2 (symbol ";") (symbol "}") 'while 'w '> 'v (symbol "{") 'q (symbol "*=") '2 (symbol ";") 'w (symbol "/=") '2 (symbol ";") 'if 'w '<= 'r (symbol "{") 'r (symbol "-=") 'w (symbol ";") 'q (symbol "+=") '1 (symbol ";") (symbol "}") (symbol "}") (symbol "}"))
) )
(list 'fn 'main (symbol "(") (symbol ")") (symbol "{") 'let 'v (symbol ":") 'i64 (symbol ";") 'let 'mut 'w (symbol ":") 'i64 (symbol ";") 'if 'y '>= '0 (symbol "{") 'v '= 'y (symbol ";") 'w '= 'y (symbol ";") (symbol "}") 'else (symbol "{") 'v '= '- 'y (symbol ";") 'w '= '- 'y (symbol ";") (symbol "}") (symbol ";") 'while 'w '<= 'r (symbol "{") 'w '= '2 (symbol ";") (symbol "}") (symbol ";") 'while 'w '> 'v (symbol "{") 'q (symbol "*=") '2 (symbol ";") 'w (symbol "/=") '2 (symbol ";") 'if 'w '<= 'r (symbol "{") 'r (symbol "-=") 'w (symbol ";") 'q (symbol "+=") '1 (symbol ";") (symbol "}") (symbol "}") (symbol "}")) (list 'fn 'main (symbol "(") (symbol ")") 'if 'x '< '0 (symbol "{") 'x '= '- 'x (symbol ";") 'x_cambio '= 'true (symbol ";") (symbol "}") (symbol ";") 'print! (symbol "(") "y: " (symbol ")") (symbol ";") (symbol "}") )
)) ))
) )
) )

Loading…
Cancel
Save