Changeset 15373
- Timestamp:
- 02/27/07 18:56:54 (21 months ago)
- Location:
- src/Pugs
- Files:
-
- 3 modified
-
Class.hs (modified) (2 diffs)
-
Eval/Var.hs (modified) (2 diffs)
-
Val/Base.hs (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/Pugs/Class.hs
r15095 r15373 19 19 , module MO.Util 20 20 ) where 21 import MO.Run 21 import MO.Run hiding (__) 22 22 import MO.Compile 23 23 import MO.Compile.Class … … 74 74 fun str -- Note that we expect "fun" to be monadic 75 75 } 76 77 inv ./ meth = ivDispatch inv $ MkMethodInvocation meth (mkArgs []) -
src/Pugs/Eval/Var.hs
r15297 r15373 17 17 import Pugs.Config 18 18 import Pugs.Monads 19 import Pugs.Class 19 20 import qualified Pugs.Val as Val 20 21 import qualified Data.ByteString.Char8 as Buf … … 236 237 -- callMethod methName [] 237 238 -- inv ./ meth = ivDispatch inv $ MkMethodInvocation meth (mkArgs []) 238 return . castV $ "CCall " ++ show methName ++ " " ++ show capt 239 case invVV of 240 Val.VPure p -> return . runIdentity $ do 241 obj <- mkObj p 242 res <- fromObjBox =<< obj ./ cast methName 243 return . castV $ Val.VPure (res `asTypeOf` p) 244 _ -> do 245 return . castV $ "CCall " ++ show methName ++ " " ++ show capt 239 246 } 240 247 -
src/Pugs/Val/Base.hs
r15297 r15373 131 131 asNum = cast . parseInt -- XXX - wrong 132 132 asInt = cast . parseInt 133 fromObj (MkInvocant x _) = undefined133 fromObj (MkInvocant x _) = fromTypeable x 134 134 classOf _ = mkBoxClass "Str" 135 135 [ "reverse" ... (MkStr . Char8.reverse . unStr)
