Changeset 5892

Show
Ignore:
Timestamp:
07/29/05 18:47:27 (3 years ago)
Author:
bsmith
svk:copy_cache_prev:
7758
Message:

Added parseNatOrRat function to Pugs.Parser.Number.
Added module exports to Pugs.Parser so only it needs to be imported.

Location:
src/Pugs
Files:
5 modified

Legend:

Unmodified
Added
Removed
  • src/Pugs/AST/Internals.hs

    r5881 r5892  
    7171import Pugs.Internals 
    7272import Pugs.Context 
    73 import Pugs.Rule 
    7473import Pugs.Types 
    7574import Pugs.Cont hiding (shiftT, resetT) 
     
    408407        return str 
    409408    doCast (VStr s)     = return $ 
    410         case ( runParser naturalOrRat () "" s ) of 
     409        case ( parseNatOrRat s ) of 
    411410            Left _   -> 0 % 1 
    412411            Right rv -> case rv of 
     
    432431    doCast (VStr "NaN") = return $ 0/0 
    433432    doCast (VStr s)     = return $ 
    434         case ( runParser naturalOrRat () "" s ) of 
     433        case ( parseNatOrRat s ) of 
    435434            Left _   -> 0 
    436435            Right rv -> case rv of 
  • src/Pugs/Class.hs

    r2911 r5892  
    1313 
    1414module Pugs.Class where 
    15 import AST 
    16 import Internals 
     15import Pugs.AST 
     16import Pugs.Internals 
    1717 
    1818{- 
  • src/Pugs/Parser.hs

    r5873 r5892  
    1515    possiblyExit, 
    1616    mkPos, 
     17 
     18    module Pugs.Lexer, 
     19    module Pugs.Parser.Types, 
     20    module Pugs.Parser.Unsafe, 
    1721) where 
    1822import Pugs.Internals 
  • src/Pugs/Parser/Number.hs

    r5036 r5892  
    22 
    33module Pugs.Parser.Number ( 
     4    parseNatOrRat, 
    45    naturalOrRat, 
    56) where 
    67import Pugs.Internals 
    78import Pugs.Rule 
     9 
     10parseNatOrRat :: String -> Either ParseError (Either Integer (Ratio Integer)) 
     11parseNatOrRat s = runParser naturalOrRat () "" s 
    812 
    913naturalOrRat :: GenParser Char st (Either Integer (Ratio Integer)) 
  • src/Pugs/Parser/Program.hs

    r5169 r5892  
    55import Pugs.Internals 
    66import Pugs.AST 
    7 import Pugs.Lexer 
     7 
     8import Pugs.Parser 
    89import Pugs.Rule 
    910import Pugs.Rule.Error 
    10  
    11 import Pugs.Parser 
    12 import Pugs.Parser.Types 
    13 import Pugs.Parser.Unsafe 
    1411 
    1512parseProgram :: Env -> FilePath -> String -> Env