2015-06-21 2:47 GMT+02:00 Alexandre Bergel <alexandre.ber...@me.com>:

> Hi!
>
> I have the following:
>
> Object subclass: #A.
> A compile: 'foo ^ 5'.
> A compile: 'foo ^ 10'.
>
> (A >> #foo) asHistoricalRingDefinition
>
> But I have no idea how I can get the two time stamps of A>>foo and the two
> source code?
>

I think we don't have this yet. (Maybe we don't need this, but we need
better tool support for Ring).

You can see some examples how I played with RGMethods
in the version browser
scanVersionsOf: method class: aClass meta: meta category: cat selector:
aSelector

and in ChangeSorterApplication
createRingMethodForRemovedSelector: aSelector inClass: aClass




>
> I cannot figure out what is the difference between
> asPassiveRingDefinition, asActiveRingDefinition, asFullRingDefinition…
> These methods all return a RGMethodDefinition.
>

Yes, all are RGMethodDefinitions, the difference is "where the real data is"
active ring -> image ( active ring method sourceCode -> code of the actual
compiled method)
historical ring -> source/changes files ( historical ring method sourceCode
-> code fetched from source/changes file (needs a valid sourcePointer))
passive ring -> nowhere, init by instantiation (passive ring method
sourceCode -> whatever was provided by the RGMethodDefinition construction)

full ring definition controls what other elements are retrieved as
ringdefinition, For example
every method has a package, but not every RGMethodDefinitions needs to now
or has a package:

(A>>#foo) asRingDefinition package. -> nil
(A>>#foo) asFullRingDefinition package. ->  "RGPackage(Unclassified)"







>
> Cheers,
> Alexandre
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>

Reply via email to