[Laszlo-dev] For Review: Change 20070215-papley-D
Jim Grandy
jgrandy at openlaszlo.org
Fri Feb 16 12:07:26 PST 2007
Document these as you might imagine should work, that is next to the
declaration. I have a revision to the js2doc tool almost ready to go
that will handle these declarations; the code in branches/legals
doesn't yet do that.
/** blah blah */
function OldSkoolClass (arg1, arg2) { ... }
/** yadda yadda */
OldSkoolClass.prototype.foo = 10;
Max's singleton idiom won't yet work anywhere, but we can leave it
out for now since documenting LFC and Kernel sources is lower
priority than documenting the public interfaces:
/** yoodle */
var MaxStyleSingleton = {
/** boddle */
foo: 10,
}
On Feb 15, 2007, at 8:45 PM, Phillip George Apley wrote:
> Jim (or anyone else who wants to take a crack at it),
>
> This is a change in progress. I'm not actually submitting the code
> as a patch yet. I'm still trying to figure out what to do to
> satisfy both the compiler and the documentation syntax in certain
> cases of field declarations in singleton classes. If you go through
> the diffs you'll find a number of points where I ask 'How to
> declare this field?' at the end of a comment. These are examples of
> such. My valuable discussion with Tucker hasn't clarified it
> enough. See more details below.
>
> Change 20070215-papley-D by papley at pgapbg417.home on 2007-02-15
> 23:28:27 EST
> in /Users/papley/src/svn/legals
>
> Summay: Remove @field and @event tags. A number of these are still
> not resolved and I need a little hint.
>
> New Featues:
>
> Bugs Fixed:
>
> Technical Reviewe: (pending)
> QA Reviewe: (pending)
> Doc Reviewe: (pending)
>
> Documentation:
>
> Release Notes:
>
> Details:
>
> What to do with declarations of variables for singleton classes?
>
> Tucker:
>
> Max's 'js way' to declare a singleton:
>
> Singleton = {
> foo: 32 // instance var
> doBar: function (...) { ... } // method
> }
>
> We need a js2 way for singletons. Max suggested:
>
> static class Singleton {
> var foo = 32;
>
> function bar(...) { ... };
> }
>
> But Jim couldn't find a precedent for 'static class' meaning
> singleton.
>
> We're open to suggestions.
>
> In Dylan, a singleton is created by over-riding make to always
> return the same instance. We could do that:
>
> class Singleton {
> static var unique;
> function make() {
> return unique || unique = super();
> }
> }
>
> [That's a sketch, don't try it at home.]
>
> On 2007-02-13, at 19:51EST, Phillip George Apley wrote:
>
> In a singleton class such as LzFontManager=new Object; a field such
> as LzFontManager.fonts may be declared
> within a method. In this case LzFontManager.__findMatchingFont uses
> var fonts=... to declare the field.
> Is there a way to declare such a variable outside a method (for
> documentation purposes)?
>
> Tests:
>
> Files:
> M WEB-INF/lps/lfc/kernel/swf/LzTextSprite.as
> M WEB-INF/lps/lfc/kernel/swf/LzLoadQueue.as
> M WEB-INF/lps/lfc/kernel/swf/LzInputTextSprite.as
> M WEB-INF/lps/lfc/kernel/swf/LzSprite.as
> M WEB-INF/lps/lfc/services/LzKeys.as
> M WEB-INF/lps/lfc/services/LzTrack.js
> M WEB-INF/lps/lfc/services/LzTrack.as
> M WEB-INF/lps/lfc/views/LzInputText.lzs
> M WEB-INF/lps/lfc/views/LzText.lzs
> M WEB-INF/lps/lfc/views/LzViewLinkage.lzs
> M WEB-INF/lps/lfc/views/LaszloView.lzs
> M WEB-INF/lps/lfc/views/LaszloCanvas.lzs
> M WEB-INF/lps/lfc/helpers/LzFont.lzs
> M WEB-INF/lps/lfc/helpers/LzState.lzs
> M WEB-INF/lps/lfc/data/LzLazyReplicationManager.lzs
> M WEB-INF/lps/lfc/data/LzDataText.lzs
> M WEB-INF/lps/lfc/data/LzDataset.lzs
> M WEB-INF/lps/lfc/data/LzDatasource.lzs
> M WEB-INF/lps/server/bin/lzenv
>
> Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20070215-
> papley-D.tar
More information about the Laszlo-dev
mailing list