Amazing! On 6/4/15, 2:04 PM, "Michael Schmalle" <teotigraphix...@gmail.com> wrote:
>Well so far I have got the below compiling into .as classes and interfaces >using the following externals files; > >There is a definite order these need to be parsed in, I am still figuring >them out. I plan on adding in the asdocs, the version of JS the API was >introduced in. > >Mike > >html5.js >missing.js >w3c_css.js >w3c_css3d.js >w3c_dom1.js >w3c_dom2.js >w3c_dom3.js >w3c_event.js >w3c_range.js > > >Attr.as >CanvasGradient.as >CanvasPattern.as >CanvasRenderingContext2D.as >CaretPosition.as >CDATASection.as >CharacterData.as >ClientInformation.as >ClientRect.as >ClientRectList.as >Comment.as >Counter.as >CSSCharsetRule.as >CSSFontFaceRule.as >CSSImportRule.as >CSSInterface.as >CSSMatrix.as >CSSMediaRule.as >CSSPageRule.as >CSSPrimitiveValue.as >CSSProperties.as >CSSRule.as >CSSRuleList.as >CSSStyleDeclaration.as >CSSStyleRule.as >CSSStyleSheet.as >CSSUnknownRule.as >CSSValue.as >CSSValueList.as >CustomEvent.as >Database.as >DatabaseCallback.as >DataTransfer.as >DedicatedWorkerGlobalScope.as >Document.as >DocumentCSS.as >DocumentEvent.as >DocumentFragment.as >DocumentRange.as >DocumentStyle.as >DocumentType.as >DOMApplicationCache.as >DOMConfiguration.as >DOMError.as >DOMErrorHandler.as >DOMException.as >DOMImplementation.as >DOMImplementationCSS.as >DOMImplementationList.as >DOMImplementationSource.as >DOMLocator.as >DOMStringList.as >DOMTokenList.as >DragEvent.as >Element.as >ElementCSSInlineStyle.as >Entity.as >EntityReference.as >ErrorEvent.as >Event.as >EventListener.as >EventTarget.as >ExceptionCode.as >FileList.as >FontFace.as >FontFaceSet.as >HashChangeEvent.as >HTMLAnchorElement.as >HTMLAppletElement.as >HTMLAreaElement.as >HTMLAudioElement.as >HTMLBaseElement.as >HTMLBaseFontElement.as >HTMLBodyElement.as >HTMLBRElement.as >HTMLButtonElement.as >HTMLCanvasElement.as >HTMLCollection.as >HTMLContentElement.as >HTMLDetailsElement.as >HTMLDialogElement.as >HTMLDirectoryElement.as >HTMLDivElement.as >HTMLDListElement.as >HTMLDocument.as >HTMLElement.as >HTMLEmbedElement.as >HTMLFieldSetElement.as >HTMLFontElement.as >HTMLFormElement.as >HTMLFrameElement.as >HTMLFrameSetElement.as >HTMLHeadElement.as >HTMLHeadingElement.as >HTMLHRElement.as >HTMLHtmlElement.as >HTMLIFrameElement.as >HTMLImageElement.as >HTMLInputElement.as >HTMLIsIndexElement.as >HTMLLabelElement.as >HTMLLegendElement.as >HTMLLIElement.as >HTMLLinkElement.as >HTMLMapElement.as >HTMLMediaElement.as >HTMLMenuElement.as >HTMLMenuItemElement.as >HTMLMetaElement.as >HTMLModElement.as >HTMLObjectElement.as >HTMLOListElement.as >HTMLOptGroupElement.as >HTMLOptionElement.as >HTMLOptionsCollection.as >HTMLParagraphElement.as >HTMLParamElement.as >HTMLPictureElement.as >HTMLPreElement.as >HTMLQuoteElement.as >HTMLScriptElement.as >HTMLSelectElement.as >HTMLShadowElement.as >HTMLSourceElement.as >HTMLStyleElement.as >HTMLTableCaptionElement.as >HTMLTableCellElement.as >HTMLTableColElement.as >HTMLTableElement.as >HTMLTableRowElement.as >HTMLTableSectionElement.as >HTMLTemplateElement.as >HTMLTextAreaElement.as >HTMLTitleElement.as >HTMLUListElement.as >HTMLVideoElement.as >Image.as >ImageData.as >KeyboardEvent.as >LinkStyle.as >MediaError.as >MediaList.as >MediaQueryList.as >MediaQueryListListener.as >MessageChannel.as >MessageEvent.as >MessagePort.as >MouseEvent.as >MSCSSMatrix.as >MutationEvent.as >MutationObserver.as >MutationRecord.as >NamedNodeMap.as >NameList.as >Node.as >NodeFilter.as >NodeIterator.as >NodeList.as >Notation.as >openDatabase.as >PageTransitionEvent.as >PopStateEvent.as >postMessage.as >ProcessingInstruction.as >ProgressEvent.as >Range.as >RangeException.as >Rect.as >RelatedEvent.as >RGBColor.as >Screen.as >ShadowRoot.as >SharedWorker.as >SharedWorkerGlobalScope.as >SQLError.as >SQLResultSet.as >SQLResultSetRowList.as >SQLTransaction.as >StyleSheet.as >StyleSheetList.as >Text.as >TextMetrics.as >TextTrack.as >TextTrackCue.as >TextTrackCueList.as >TextTrackList.as >TimeRanges.as >TreeWalker.as >TypeInfo.as >UIEvent.as >UserDataHandler.as >ValidityState.as >ViewCSS.as >VTTCue.as >WebKitCSSMatrix.as >WebSocket.as >WebWorker.as >Window.as >Worker.as >WorkerGlobalScope.as >WorkerLocation.as >XMLHttpRequestEventTarget.as >XMLHttpRequestUpload.as > > > >On Thu, Jun 4, 2015 at 3: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 >>>> >> >>> >>>> >> >>> >>>> >> >> >>>> >> >>>> >> >>>> >>>> >>> >>