我很感興趣,喜歡Razor視圖引擎解析器如何解析兩種不同的語言,如C#和JavaScript。使用哪些技術來編寫在語言之間切換的解析器?
這是非常酷的,下面的作品,例如:
$("#fm_duedate").val('@DateTime.Now.AddMonths(1).ToString("MM/dd/yyyy")');
我要去嘗試,並期待在源代碼,但我很好奇,如果有一個某種理論基礎的像一個解析器這或者更像是採取兩種語言的聯合並解析它的蠻力嗎?
試圖爲自己推理它,我說「你從每種語言的解析器開始,然後你爲每一種語言添加一組產品,將它切換到另一種產品」,但我懷疑它如此簡單。
我想完美的答案是討論Razor引擎是如何實現的,或者是源代碼的漫步(我實際上並沒有真正Google因爲害怕掉下兔子洞而討論這個問題)。或者,對於如何解析兩種語言的問題,一些見解將會很棒。