BTW, I just ran my asdoc tool on every project in flex-asjs and it only
took 10 seconds(parse, analyze, render), this uses fully configurable
Velocity templates instead of XSL.

http://snag.gy/EOIuW.jpg

Mike

On Fri, Jun 5, 2015 at 3:31 PM, Michael Schmalle <teotigraphix...@gmail.com>
wrote:

> Alex! I just pulled the changes you made and rebuilt Falcon code base and
> parsers.
>
> I just ran my asdoc tool on the flex-asjs repo, I think another screenshot
> is in order. :)
>
> http://snag.gy/TDXfe.jpg
>
> Mike
>
> On Fri, Jun 5, 2015 at 3:06 PM, Alex Harui <aha...@adobe.com> wrote:
>
>> I just pushed a change that seems to get ASDoc working.  There was a rule
>> that looked like it tried to eliminate double-spaces and somehow the lexer
>> ended up there at the end of string instead of thinking it was done.
>>
>> I have no idea what that was for since the output currently seems to
>> capture line-feeds in the asdoc so whitespace in general probably needs to
>> be trimmed before turning it into its final form.
>>
>> Let me know if you think that lexer rule was important and we can revisit
>> why we get stuck there.
>>
>> -Alex
>>
>> On 6/4/15, 12:13 PM, "Michael Schmalle" <teotigraphix...@gmail.com>
>> wrote:
>>
>> >Yeah sorry to confuse you, the Velocity stuff doesn't matter, for that
>> >matter my asdoc framework I wrote doesn't(it was just showing I had all
>> >this working in the context of Falcon), we just need the ASDocTokenizer
>> to
>> >tokenize the comment data given to the ASDocDelegate.
>> >
>> >Mike
>> >
>> >On Thu, Jun 4, 2015 at 3:12 PM, Michael Schmalle
>> ><teotigraphix...@gmail.com>
>> >wrote:
>> >
>> >> The way I did it was, I did exactly what you did, implemented the
>> >> ASDocDelegate and saved the tokes as it parsed all the files.
>> >>
>> >> Then I used the token String like you in the ASDocTokenizer to parse
>> the
>> >> loop I showed you above.
>> >>
>> >> I would add the DocTag and stuff if you can get the ASDocTokenizer
>> >>working
>> >> like how I have it in the code above. I already wrote an API for easy
>> >> access to the tags and comment in an ASDocCOmment class that has a list
>> >>of
>> >> DocTags.
>> >>
>> >> Mike
>> >>
>> >> On Thu, Jun 4, 2015 at 3:09 PM, Alex Harui <aha...@adobe.com> wrote:
>> >>
>> >>> For this exercise though, we don’t care about the output as Velocity
>> or
>> >>> XSL right?  All you want is ASDocTokens in the AST?  IIRC, in Falcon
>> >>>you
>> >>> retrieve ASDoc comments via node.getASDocComment() and get an
>> >>>ASDocComment
>> >>> instance.  Do you want the Token to be the root of a mini-tree of
>> >>>parsed
>> >>> nodes?
>> >>>
>> >>> -Alex
>> >>>
>> >>>
>> >>> On 6/4/15, 11:47 AM, "Michael Schmalle" <teotigraphix...@gmail.com>
>> >>> wrote:
>> >>>
>> >>> >I actually wrote a WHOLE NEW asdoc program that uses Apache Velocity
>> >>> >templates instead of XSL.
>> >>> >
>> >>> >That DocTag is my class.
>> >>> >
>> >>> >Mike
>> >>> >
>> >>> >On Thu, Jun 4, 2015 at 2:45 PM, Alex Harui <aha...@adobe.com> wrote:
>> >>> >
>> >>> >> I don’t see any signs of ASDoc support in flex-falcon.  I see
>> >>> >> ASDocTokenizer and ASDocToken, but no ASDOC.java that would be
>> >>> >>equivalent
>> >>> >> to MXMLC.java and have a main() method.  The current Flex SDK has
>> an
>> >>> >> ASDoc.jar.  Shouldn’t we have these pieces? Do you have them around
>> >>> >> somewhere?   Otherwise I will try to quickly create them.
>> >>> >>
>> >>> >> -Alex
>> >>> >>
>> >>> >> On 6/4/15, 11:36 AM, "Michael Schmalle" <teotigraphix...@gmail.com
>> >
>> >>> >>wrote:
>> >>> >>
>> >>> >> >BTW, the loop always happens at the VERY end of the comment, so
>> >>>when
>> >>> >>you
>> >>> >> >get to the end the(the last call of next() that should return
>> >>>null);
>> >>> >> >
>> >>> >> >tok = tokenizer.next();
>> >>> >> >
>> >>> >> >never returns, it gets stuck trying to exit.
>> >>> >> >
>> >>> >> >Mike
>> >>> >> >
>> >>> >> >On Thu, Jun 4, 2015 at 2:34 PM, Michael Schmalle
>> >>> >> ><teotigraphix...@gmail.com>
>> >>> >> >wrote:
>> >>> >> >
>> >>> >> >> I posted about this a couple weeks ago and I tried recompiling
>> >>>with
>> >>> >> >>JFlex
>> >>> >> >> 1.5 I think, the older version and still had the problem.
>> >>> >> >>
>> >>> >> >> Maybe I messed up something but I tried with my same asdoc code
>> >>>when
>> >>> >>I
>> >>> >> >> fixed the build for the FlexJS asdocs. I wanted to see it work
>> >>>with
>> >>> >>my
>> >>> >> >> version of a documentor.
>> >>> >> >>
>> >>> >> >> I think IIRC, I actually tried a simple test case and it would
>> >>>work.
>> >>> >> >>
>> >>> >> >> I have code that uses the tokenizer;
>> >>> >> >>
>> >>> >> >>
>> >>> >> >>     public void compile()
>> >>> >> >>     {
>> >>> >> >>         if (token == null)
>> >>> >> >>             return;
>> >>> >> >>
>> >>> >> >>         String data = token.getText();
>> >>> >> >>         ASDocTokenizer tokenizer = new ASDocTokenizer(false);
>> >>> >> >>         tokenizer.setReader(new StringReader(data));
>> >>> >> >>         ASDocToken tok = tokenizer.next();
>> >>> >> >>         boolean foundDescription = false;
>> >>> >> >>         DocTag pendingTag = null;
>> >>> >> >>
>> >>> >> >>         try
>> >>> >> >>         {
>> >>> >> >>             while (tok != null)
>> >>> >> >>             {
>> >>> >> >>                 if (!foundDescription
>> >>> >> >>                         && tok.getType() ==
>> >>> >> >>ASTokenTypes.TOKEN_ASDOC_TEXT)
>> >>> >> >>                 {
>> >>> >> >>                     description = tok.getText();
>> >>> >> >>                 }
>> >>> >> >>                 else
>> >>> >> >>                 {
>> >>> >> >>                     // do tags
>> >>> >> >>                     if (tok.getType() ==
>> >>> >>ASTokenTypes.TOKEN_ASDOC_TAG)
>> >>> >> >>                     {
>> >>> >> >>                         if (pendingTag != null)
>> >>> >> >>                         {
>> >>> >> >>                             addTag(pendingTag);
>> >>> >> >>                             pendingTag = null;
>> >>> >> >>                         }
>> >>> >> >>                         pendingTag = new
>> >>> >> >> DocTag(tok.getText().substring(1));
>> >>> >> >>                     }
>> >>> >> >>                     else if (tok.getType() ==
>> >>> >> >> ASTokenTypes.TOKEN_ASDOC_TEXT)
>> >>> >> >>                     {
>> >>> >> >>
>>  pendingTag.setDescription(tok.getText());
>> >>> >> >>                         addTag(pendingTag);
>> >>> >> >>                         pendingTag = null;
>> >>> >> >>                     }
>> >>> >> >>                 }
>> >>> >> >>
>> >>> >> >>                 foundDescription = true;
>> >>> >> >>
>> >>> >> >>                 tok = tokenizer.next();
>> >>> >> >>             }
>> >>> >> >>         }
>> >>> >> >>         catch (Exception e)
>> >>> >> >>         {
>> >>> >> >>             e.printStackTrace();
>> >>> >> >>         }
>> >>> >> >>     }
>> >>> >> >>
>> >>> >> >> Mike
>> >>> >> >>
>> >>> >> >>
>> >>> >> >> On Thu, Jun 4, 2015 at 2:30 PM, Alex Harui <aha...@adobe.com>
>> >>> wrote:
>> >>> >> >>
>> >>> >> >>>
>> >>> >> >>>
>> >>> >> >>> On 6/4/15, 11:23 AM, "Michael Schmalle"
>> >>><teotigraphix...@gmail.com
>> >>> >
>> >>> >> >>> wrote:
>> >>> >> >>> >>Hmm.  Maybe I should spend some time looking into fixing
>> >>> >> >>>ASDocTokenizer?
>> >>> >> >>> >> Was the problem that it didn’t work on every AS file we
>> >>>current
>> >>> >> >>>have?
>> >>> >> >>> >>
>> >>> >> >>> >
>> >>> >> >>> >
>> >>> >> >>> >It doesn't work on anything, there is an infinite loop in the
>> >>> >>scanner
>> >>> >> >>> that
>> >>> >> >>> >is created by JFlex, the RawASDocTokenizer is broken.
>> >>> >> >>> >
>> >>> >> >>> >What is weird is I was using the SAME code base when I wrote
>> >>>the
>> >>> >>asdoc
>> >>> >> >>> >documenter I have 2 years ago and it worked fine.
>> >>> >> >>>
>> >>> >> >>> We upgraded the version of JFlex, IIRC.  I’ll take a look.
>> What
>> >>> >>setup
>> >>> >> >>>did
>> >>> >> >>> you have for trying it?  Did you run it on the Flex SDK or
>> >>>FlexJS
>> >>> >>SDK
>> >>> >> >>>or
>> >>> >> >>> did it even loop on a simple test case?
>> >>> >> >>>
>> >>> >> >>> -Alex
>> >>> >> >>>
>> >>> >> >>>
>> >>> >> >>
>> >>> >>
>> >>> >>
>> >>>
>> >>>
>> >>
>>
>>
>

Reply via email to