From hadley at rice.edu  Thu Sep 10 02:42:15 2009
From: hadley at rice.edu (Hadley Wickham)
Date: Wed, 9 Sep 2009 19:42:15 -0500
Subject: [Rd] Monkey patching +.POSIXt
In-Reply-To: <62C82B39B8A85E4B95A18F7F7B852F87054BBBA246@exvic-mbx03.nexus.csiro.au>
References: <f8e6ff050909090740l16ee7dbanf3eb9a3b2ad43985@mail.gmail.com> 
	<62C82B39B8A85E4B95A18F7F7B852F87054BBBA246@exvic-mbx03.nexus.csiro.au>
Message-ID: <f8e6ff050909091742l4175eed3le4e070c88b04ff38@mail.gmail.com>

>
> In this particular case, the trick is to assign the new version both into the namespace and into the environment '.__S3MethodsTable__.' inside the namespace.

The problem is +.POSIXt doesn't seem to be there:

> exists("+.POSIXt", asNamespace("base")$.__S3MethodsTable__., inherits=F)
[1] FALSE


> Speaking as a monkey, I do this kind of thing regularly, and there is a function 'assign.to.base' in the 'mvbutils' package that does it automatically, e.g.
>
> assign.to.base( '+.POSIXt', my.plus.POSIXt)

I tried that too, but without any luck.

Hadley


-- 
http://had.co.nz/



[Rd] Monkey patching +.POSIXt
Hadley Wickham