saqut-compiler/src
abdussamedulutas 0bcdabab8a feat(opt): sabit katlama'ya unary operatörler ekle (!, ~, -, +)
Parser unary'yi BinaryExpressionNode(Left=nullptr) olarak temsil eder.
isScalarLit/getScalarVal/canFoldUnary/computeUnary eklendi.

Katlanan ifadeler: !0→1, !1→0, !42→0, ~0→-1, ~1→-2, -5→-5, +7→7,
!true→0, !false→1. Zincirli: !(!0)→0 (fixpoint ile).
Boolean literal (true/false) da !operatörü için desteklenir.
2026-06-18 21:21:28 +03:00
..
cli feat(opt): Faz 4 — Optimizasyon (sabit katlama + ölü kod eleme + --optimized) 2026-06-18 21:11:05 +03:00
core feat(opt): Faz 4 — Optimizasyon (sabit katlama + ölü kod eleme + --optimized) 2026-06-18 21:11:05 +03:00
diagnostic feat(faz3): semantik analiz — tip denetimi + yapısal doğrulama (#72) 2026-06-18 17:20:06 +03:00
ir feat(vm): string veri tipi + run pipeline'ına TypeChecker eklendi 2026-06-18 19:46:48 +03:00
lexer perf: include() parametresini std::string → std::string_view yap 2026-06-18 18:03:54 +03:00
opt feat(opt): sabit katlama'ya unary operatörler ekle (!, ~, -, +) 2026-06-18 21:21:28 +03:00
parser feat(opt): Faz 4 — Optimizasyon (sabit katlama + ölü kod eleme + --optimized) 2026-06-18 21:11:05 +03:00
semantic feat(faz3): semantik analiz — tip denetimi + yapısal doğrulama (#72) 2026-06-18 17:20:06 +03:00
symbol feat(faz2): sembol tablosu — isim çözümleme + scope + referans toplama (#71) 2026-06-18 15:43:26 +03:00
tokenizer perf(tokenizer): switch dispatch + unordered_map keyword lookup 2026-06-18 18:35:10 +03:00
vendor/nlohmann refactor: nlohmann/json entegrasyonu — string birleştirme yerine nesne API 2026-06-18 16:21:58 +03:00
vm feat(vm): string veri tipi + run pipeline'ına TypeChecker eklendi 2026-06-18 19:46:48 +03:00
json.hpp fix: kaynak dosya yolu propagasyonu ve AST JSON girinti hataları 2026-06-14 15:57:54 +03:00
main.cpp feat(cli): saqut ir komutu — IR talimat dump'u 2026-06-18 19:21:12 +03:00
tools.hpp cli: modular command system, AST JSON serialization, file split prep 2026-05-26 17:05:20 +03:00