如何在Boo中添加语言关键字,让'when'表现为'if'

3 boo

我似乎无法弄清楚如何将'when'关键字添加到BOO,它应该表现为'if'.我想我可以制作一个方法,但是我不能像我一样用它来移动.任何指针将不胜感激.

-标记

小智 11

这会做你想要的:

import Boo.Lang.Compiler.Ast
import Boo.Lang.Compiler.MetaProgramming

macro when:
    return [|
        if $(when.Arguments[0]):
            $(when.Block)
    |]

x = 1
when x == 1:
    print "x equals one"
when x == 2:
    print "x equals two"
Run Code Online (Sandbox Code Playgroud)

顺便说一句,随意(也)在Boo邮件列表上询问,以便更快地得到(更多)答案;)

http://groups.google.com/group/boolang/