[Vm-dev] VM Maker: VMMaker-oscog-golubovsky.136.mcz

Bert Freudenberg bert at freudenbergs.de
Tue Jan 10 14:04:40 UTC 2012


On 10.01.2012, at 14:28, Igor Stasenko wrote:

> What is this:
> 
> getMethod: 'setVMTimerInterval' withSig: '(I)V' inClass: vmcls.
> 
> first time i see that. ?

The Java interface, looks like.

- Bert -

> On 10 January 2012 05:02,  <commits at source.squeak.org> wrote:
>> 
>> Dmitry Golubovsky uploaded a new version of VMMaker to project VM Maker:
>> http://source.squeak.org/VMMaker/VMMaker-oscog-golubovsky.136.mcz
>> 
>> ==================== Summary ====================
>> 
>> Name: VMMaker-oscog-golubovsky.136
>> Author: golubovsky
>> Time: 9 January 2012, 11:01:10 pm
>> UUID: 892dbc65-4c95-4bdd-837c-6bd55f66c93d
>> Ancestors: VMMaker-oscog-golubovsky.135
>> 
>> Added primitives to get and set VM idle timer interval.
>> 
>> =============== Diff against VMMaker-oscog-golubovsky.135 ===============
>> 
>> Item was added:
>> + ----- Method: AndroidPlugin>>primGetVMTimerInterval (in category 'system primitives') -----
>> + primGetVMTimerInterval
>> +       | timer vmcls vmobj bmmeth jmsg |
>> +       <var: 'timer' type: 'int'>
>> +       <var: 'vmcls' type: 'jclass'>
>> +       <var: 'vmobj' type: 'jobject'>
>> +       <var: 'bmmeth' type: 'jmethodID'>
>> +       <export: true>
>> +       vmcls := self getVMClass.
>> +       vmcls ifNil: [^ interpreterProxy primitiveFail].
>> +       vmobj := self getVMObject.
>> +       vmobj ifNil: [^ interpreterProxy primitiveFail].
>> +       bmmeth := self getMethod: 'getVMTimerInterval' withSig: '()I' inClass: vmcls.
>> +       bmmeth ifNil: [^ interpreterProxy primitiveFail].
>> +       timer := self callIntMethod: bmmeth On: vmobj with: 0.
>> +       interpreterProxy pop: 1.
>> +       interpreterProxy pushInteger: timer.
>> + !
>> 
>> Item was added:
>> + ----- Method: AndroidPlugin>>primSetVMTimerInterval (in category 'system primitives') -----
>> + primSetVMTimerInterval
>> +       | timer vmcls vmobj bmmeth jmsg |
>> +       <var: 'timer' type: 'int'>
>> +       <var: 'vmcls' type: 'jclass'>
>> +       <var: 'vmobj' type: 'jobject'>
>> +       <var: 'bmmeth' type: 'jmethodID'>
>> +       <export: true>
>> +       timer :=  interpreterProxy stackIntegerValue: 0.
>> +       vmcls := self getVMClass.
>> +       vmcls ifNil: [^ interpreterProxy primitiveFail].
>> +       vmobj := self getVMObject.
>> +       vmobj ifNil: [^ interpreterProxy primitiveFail].
>> +       bmmeth := self getMethod: 'setVMTimerInterval' withSig: '(I)V' inClass: vmcls.
>> +       bmmeth ifNil: [^ interpreterProxy primitiveFail].
>> +       self callVoidMethod: bmmeth On: vmobj with: timer.
>> +       interpreterProxy pop: 1.
>> + !
>> 
> 
> 
> 
> -- 
> Best regards,
> Igor Stasenko.



More information about the Vm-dev mailing list