Önbellek
lexer cache — ayrıştırılmış AST nerede saklanıyor ve ne zaman geçersiz oluyor.
lexer cache info [--dir yol]
lexer cache list [--dir yol]
lexer cache clear [--dir yol]Ne saklanıyor#
Saklanan şey ayrıştırılmış AST'dir — derleme çıktısı değil. LexerLang derlenmiyor; önbellek yalnızca aynı dosyayı her istekte yeniden ayrıştırma maliyetini ortadan kaldırıyor.
lexer cache info --dir .Ne zaman geçersiz oluyor#
Geçerlilik dosyanın değişiklik zamanına ve boyutuna bakar. İkisinden biri değiştiyse dosya yeniden ayrıştırılır.
Bu, içerik özetinden (hash) ucuzdur ama bir sınırı vardır: dosyayı değiştirip mtime'ı elle eski bir değere geri alırsanız — örneğin touch -t ya da mtime'ı koruyan bir kopyalama — önbellek eskimiş AST'yi kullanmaya devam eder.
lexer cache clear --dir .Nerede duruyor#
--dir ile verilen dizinin altında, .lexer/cache içinde. Varsayılan uygulamanın çalışma dizinidir.
Bu, sistemd altında çalışan bir servis için önemli: servisin o dizine yazma izni olmalı.
# systemd biriminde
ReadWritePaths=/var/www/uygulamaİzin yoksa sunucu çalışır ama her istekte yeniden ayrıştırır.
Sırada#
Sözdizimi — dilin şekli.