whoops i meant
if (1==2)
{
_("hello");//this surely would be redundant code and removed?
doSomeWork();//this surely would be redundant code and removed?
}
On Wednesday, March 20, 2019 at 10:24:01 PM UTC+8, Gareth Murfin wrote:
>
> Thanks for the answer. Oh shame, I thought proguard already did this a
> decade ago? I mean if the compiler is even slightly smart and a variable is
> declared *final*, then its not really runtime state I would have thought
> and therefore should be removed. Would it be the same if you did something
> like:
>
> if (1==1)
> {
> _("hello");//this surely would be redundant code and removed?
> doSomeWork();//this surely would be redundant code and removed?
> }
>
> On Wednesday, March 20, 2019 at 7:50:41 PM UTC+8, Steve Hannah wrote:
>>
>> Build-time pruning does not make use of any runtime state for determining
>> code paths. Therefore changing the value of Prefs.DEBUG would have no
>> effect.
>>
>> On Wed, Mar 20, 2019 at 1:31 AM Gareth Murfin <[email protected]>
>> wrote:
>>
>>> So I always make a method like this:
>>>
>>> //for printing
>>> private static void _(String s)
>>> {
>>> if (Prefs.DEBUG)
>>> {
>>> com.codename1.io.Log.p(Prefs.ANSI_GREEN+"####StateMachine
>>> "+s);
>>> }
>>> }
>>>
>>> then when it comes to release I set Prefs.DEBUG (which is final) to
>>> false, would this mean the method was stripped out during compilation? On
>>> both iOS/Android? Or not ? It's just that during dev I really need A LOT of
>>> print outs to follow my code, but then for release obviously I dont want
>>> any. In the old J2ME days I used to do a find and replace on all calls to
>>> _("hello"); etc before release, but im wondering if that's necessary
>>> anymore?
>>>
>>> I assume if its not stripped out during compilation then each call even
>>> if it really does nothing may add up (i do a lot in loops etc) to
>>> eventually slow certain things down (even by X many ms). But from what I
>>> understand modern java compilers would remove it since it really doesnt do
>>> anything if debug is false.
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "CodenameOne Discussions" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> Visit this group at
>>> https://groups.google.com/group/codenameone-discussions.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/codenameone-discussions/da3337af-e83e-4c7d-bdbf-487375537853%40googlegroups.com
>>>
>>> <https://groups.google.com/d/msgid/codenameone-discussions/da3337af-e83e-4c7d-bdbf-487375537853%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>> --
>> Steve Hannah
>> Software Developer
>> Codename One
>> http://www.codenameone.com
>>
>
--
You received this message because you are subscribed to the Google Groups
"CodenameOne Discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
Visit this group at https://groups.google.com/group/codenameone-discussions.
To view this discussion on the web visit
https://groups.google.com/d/msgid/codenameone-discussions/a529f339-8380-453a-9dce-c1e2a2ffdc61%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.