Changeset 13903 for src/Pugs/AST.hs

Show
Ignore:
Timestamp:
10/05/06 06:25:21 (2 years ago)
Author:
audreyt
Message:

* Add support for transliteration:

tr///
y///
$x tr///
$x
y///

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • src/Pugs/AST.hs

    r13801 r13903  
    202202mergeStmts (Syn "package" [kind, pkg@(Val (VStr _))]) y = 
    203203    Syn "namespace" [kind, pkg, y] 
    204 mergeStmts x@(Ann ann (Syn syn _)) y | (syn ==) `any` words "subst match //" = 
     204mergeStmts x@(Ann ann (Syn syn _)) y | isImplicitTopic syn = 
    205205    mergeStmts (Ann ann (App (_Var "&infix:~~") Nothing [_Var "$_", x])) y 
    206 mergeStmts x y@(Ann ann (Syn syn _)) | (syn ==) `any` words "subst match //" = 
     206mergeStmts x y@(Ann ann (Syn syn _)) | isImplicitTopic syn = 
    207207    mergeStmts x (Ann ann (App (_Var "&infix:~~") Nothing [_Var "$_", y])) 
    208208mergeStmts (Ann ann (Syn "sub" [Val (VCode sub)])) y | subType sub == SubBlock = 
     
    215215mergeStmts x (Stmts Noop y) = mergeStmts x y 
    216216mergeStmts x y = Stmts x y 
     217 
     218isImplicitTopic "subst" = True 
     219isImplicitTopic "match" = True 
     220isImplicitTopic "trans" = True 
     221isImplicitTopic "//"    = True 
     222isImplicitTopic _       = False 
    217223 
    218224isEmptyParams :: [Param] -> Bool