I will  make a change for this

On Tue, May 18, 2010 at 10:31 AM, P T Withington <[email protected]>wrote:

> Ok.  Henry, can you do what André proposes?  This seems like the best plan.
>
> I am pretty sure that if you end up with a back-end compile where the
> conditional is not defined that the back-end will signal an error; but I
> think that is the best we can do (since the tag compiler has to permit
> compiling to runtime-neutral .lzo, which has no runtime specification).
>
> On 2010-05-18, at 10:22, André Bargull wrote:
>
> > I'm not sure whether it's possible test for valid compile-time
> conditionals at parse time. For example think of custom conditionals which
> are only used/available when compiling the actual application.
> > So, I'll only change two things:
> > - rename "runtime" to "when"
> > - remove prepending the "when" value with '$' in ClassModel.java, this
> means you need to write <passthrough when="$as3"> instead of <passthrough
> when="as3">. This makes <passthrough>'s "when" compatible with <switch>'s
> "property" attribute.
> >
> >
> >
> > On 5/15/2010 3:31 PM, P T Withington wrote:
> >> Ok, you convinced me.  Reopen the bug and lets change it to
> `when="..."`.  As a bonus, you can verify that the when condition is a valid
> compile-time conditional, but I'm pretty sure the script compiler will
> complain if it is not.
> >>
> >> On 2010-05-15, at 09:13, André Bargull wrote:
> >>
> >>> But valid (= currently supported) runtimes are only 'swf8', 'swf9',
> 'swf10' and 'dhtml'. That means 'as3' is not a valid runtime identifier, but
> I think we still want to have a pass through for both, swf9 and swf10, to
> avoid duplicate code.
> >>> (I know I'm a bit nit-picking right now, but this is my full intention,
> because from the user's point of view the current rationale might be
> confusing.)
> >>>
> >>>
> >>> On 5/15/2010 3:00 PM, P T Withington wrote:
> >>>> In the case of passthrough, where its intent is to "pass through" to a
> particular target runtime, the runtime argument seems most appropriate to
> me.  I suppose we should add some sanity checking that the runtime argument
> is a valid runtime.
> >>>>
> >>>> If you really need a passthrough conditional to other properties, you
> can do so in a<script>   tag.
> >>>>
> >>>> ---
> >>>>
> >>>> The problem we are trying to solve here is that<switch>   cannot be
> used in a binary library (because its semantics are that it is evaluated at
> parse time).  Another approach would be to change switch to have an
> 'evaluation time' property, but that seemed like generality we didn't need.
> >>>>
> >>>> On 2010-05-15, at 08:10, André Bargull wrote:
> >>>>
> >>>>
> >>>>> We had first:
> >>>>> <switch>
> >>>>>  <when runtime="swf10">
> >>>>>    <passthrough>
> >>>>>      import flash.utils.*;
> >>>>>    </passthrough>
> >>>>>  </when>
> >>>>> </switch>
> >>>>>
> >>>>> "runtime" was only allowed to be: 'swf7', 'swf8', 'swf9', 'swf10' or
> 'dhtml'
> >>>>>
> >>>>>
> >>>>> The first form was deprecated in favor of:
> >>>>> <switch>
> >>>>> <when property="$swf10">
> >>>>>    <passthrough>
> >>>>>      import flash.utils.*;
> >>>>>    </passthrough>
> >>>>>  </when>
> >>>>> </switch>
> >>>>>
> >>>>> "property" can be any of the compile time constants: '$swf7',
> '$swf8', '$swf9', '$swf10', '$dhtml', '$as3', '$as2', '$debug' (left out
> some unused constants)
> >>>>>
> >>>>>
> >>>>> And now we're back with "runtime", although "runtime" is just any
> string which will be transformed to the compile time constants from above
> (by prepending "$" to the string).
> >>>>>
> >>>>> <passthrough runtime="swf10">
> >>>>>  import flash.utils.*;
> >>>>> </passthrough>
> >>>>>
> >>>>> But also possible:
> >>>>> <passthrough runtime="as3">
> >>>>>  import flash.utils.*;
> >>>>> </passthrough>
> >>>>>
> >>>>> or:
> >>>>> <passthrough runtime="debug">
> >>>>>  import flash.utils.*;
> >>>>> </passthrough>
> >>>>>
> >>>>>
> >>>>> So, maybe<passthrough>'s new "runtime" attribute should rather be
> "property" like in<when>?
> >>>>>
> >>>>>
> >>>>>
> >>>>> On 5/14/2010 10:46 PM, P T Withington wrote:
> >>>>>
> >>>>>> Approved!
> >>>>>>
> >>>>>> On 2010-05-13, at 17:19, Henry Minsky wrote:
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>> Change 20100513-hqm-p by [email protected] on 2010-05-13 17:17:23
> EDT
> >>>>>>>    in /Users/hqm/openlaszlo/trunk1
> >>>>>>>    for http://svn.openlaszlo.org/openlaszlo/trunk
> >>>>>>>
> >>>>>>> Summary:<passthrough>    should take a `runtime="..."` property
> >>>>>>>
> >>>>>>> New Features:
> >>>>>>>
> >>>>>>> Bugs Fixed: LPP-8995
> >>>>>>>
> >>>>>>> Technical Reviewer: ptw
> >>>>>>> QA Reviewer: (pending)
> >>>>>>> Doc Reviewer: (pending)
> >>>>>>>
> >>>>>>> Documentation:
> >>>>>>>
> >>>>>>> Release Notes:
> >>>>>>>
> >>>>>>> Overview:
> >>>>>>>
> >>>>>>>
> >>>>>>> Details:
> >>>>>>>
> >>>>>>>
> >>>>>>> Tests:
> >>>>>>>
> >>>>>>> test case below, passthru should disappear in DHTML output:
> >>>>>>> <canvas width="100%" height="80%">
> >>>>>>>  <debug  fontsize="12"/>
> >>>>>>>
> >>>>>>>  <class name="foo">
> >>>>>>>    <passthrough runtime="swf10">
> >>>>>>>      import flash.net.*;
> >>>>>>>    </passthrough>
> >>>>>>>    <method name="foo">
> >>>>>>>      Debug.info('foobar');
> >>>>>>>    </method>
> >>>>>>>
> >>>>>>>  </class>
> >>>>>>>
> >>>>>>>
> >>>>>>> </canvas>
> >>>>>>>
> >>>>>>>
> >>>>>>> Files:
> >>>>>>> M
> WEB-INF/lps/server/src/org/openlaszlo/compiler/NodeModel.java
> >>>>>>> M
> WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassModel.java
> >>>>>>>
> >>>>>>> Changeset:
> http://svn.openlaszlo.org/openlaszlo/patches/20100513-hqm-p.tar
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>
> >>>>
> >>
> >>
>
>


-- 
Henry Minsky
Software Architect
[email protected]

Reply via email to