- Feb 01, 2013
-
-
Rene Saarsoo authored
No more special casing for config options subsections - the Tag::Cfg just defines different rules for splitting members into subsections. Instance/Static subsections are now only defined for properties and methods. Events and CSS members will be listed without subsectioning.
-
Rene Saarsoo authored
Add additional :toolbar_title setting to @member_type config. Use it to assign shorter toolbar titles to the member types that otherwise have a bit too long titles.
-
Rene Saarsoo authored
For this whole thing to work the list of memberTypes is passed to the Docs app, which then uses the list to create toolbar buttons.
-
- Jan 31, 2013
-
-
Rene Saarsoo authored
That's just needless.
-
Rene Saarsoo authored
-
Rene Saarsoo authored
-
Rene Saarsoo authored
Take into account all the registered property-like tags when deciding whether to render in method or property style.
-
Rene Saarsoo authored
Custom member types can now finally be detected.
-
Rene Saarsoo authored
The titles and ordering of the sections is now defined within the Tag class of each member type. Ordering works similarly to the ordering of #to_html method calls. Titles are no more hardcoded in Render::Class.
-
Rene Saarsoo authored
Divide members into two broad categories: - method_like - property_like The @param Tag merger is now set up for all method_like members - so all such members could have parameters. The Default and Type tags are set up for all property_like members - so all such members will have the :default and :type fields processed and merged. This should lay ground for the future with user-defined member types.
-
Rene Saarsoo authored
Add more extensive documentation for Tag#html_position.
-
Rene Saarsoo authored
-
Rene Saarsoo authored
Why are we skipping it on that case? Possibly to avoid creating the :html_type field, but currently we are creating it anyway, which defeats the whole purpose of skipping the parsing, plus we lose warnings of bad typedefs. Now we get the type warnings also when doing export. And the code is simpler. Win-win.
-
Rene Saarsoo authored
Handle it at the Format::Class level again - but this time do it through the Format::Doc#skip_type_parsing setter method. Because the concrete CSS member types are hard-coded anyway it's better to have this hard-coded logic in one spot, not scattered around several Tag classes.
-
- Jan 30, 2013
-
-
Rene Saarsoo authored
The instantce of Format::Subproperties however is now created inside the Format::Doc class, which also has methods #format_subproperty and #format_type that delegate to Format::Subproperties class.
-
Rene Saarsoo authored
Passing in the formatter is enough - we can extract relatons from that.
-
Rene Saarsoo authored
The Format::Class is now much-much cleaner. To avoid passing the Relations object explicitly around, add an accessor to Format::Doc - so we can just pass an instance of the formatter around and TypeParser can get the relations object from the formatter, which it gets passed anyway and which already includes the relations.
-
Rene Saarsoo authored
Turn Shortener from singleton into normal class - simplifies testing, and in the context of Tag::Doc it only gets instantiated once anyway. Also rename :shortDoc to :short_doc - a more Rubysh name.
-
Rene Saarsoo authored
-
Rene Saarsoo authored
-
Rene Saarsoo authored
Cleaning up the top-level JsDuck namespace.
-
- Jan 29, 2013
-
-
Rene Saarsoo authored
The rendering of @cfg, @property, @css_var subproperties got lost during the previous refactorings. Add a special Subproperties tag class to render the :properties field.
-
Rene Saarsoo authored
Param, Return and Throw classes now perform calls to Subproperties.render* methods as needed. Additionally rename the Param tag @key from :param to :params. Otherwise we have no handler for the :params key to render the HTML.
-
Rene Saarsoo authored
Move the rendering of params, return and throws inside that.
-
Rene Saarsoo authored
Move the whole rendering of class sidebar inside that. The Renderer class is now way cleaner.
-
Rene Saarsoo authored
Instead of having three fixed places for positioning the docs, the Tag classes are now sorted based on a numeric #html_position value. For start I'm defining three constants, but any other values can also be used.
-
Rene Saarsoo authored
For now we're also introducing a special html_position=:doc. But the next step will be to get rid of that.
-
Rene Saarsoo authored
-
Rene Saarsoo authored
-
Rene Saarsoo authored
-
Rene Saarsoo authored
-
Rene Saarsoo authored
The HTML rendering is now done in two parts: 1. Tag#format method is called, passing the DocFormatter. This is where Markdown to HTML conversion happens. 2. Tag#to_html method is called, which must just return HTML. No more can formatter be used inside #to_html. This simplified the passing of DocFormatter instance to Tags - no more do we need to inject the formatter inside Tag classes, instead we can just pass it as a parameter. With this we remove the single remaining state object from Tag class.
-
- Jan 28, 2013
-
-
Rene Saarsoo authored
A minor enhancement to improve compatibility with Closure Compiler.
-
Rene Saarsoo authored
Eliminates a special case code used when calling the overrides processor. Added :[]= method to options to allow us setting values. Changed the implementetion to use idiomatic instance_variable_get/set methods.
-
Rene Saarsoo authored
Because :name applies to all members, introduce a special merge_context called :member, which expands to list of all known member types.
-
Rene Saarsoo authored
This allows us to do a larger refactoring in Merger class, eliminating all the merge_like_* methods, and doing almost all the merging inside the main #merge method.
-
Rene Saarsoo authored
Removing duplication of the docs and code comparison and merging code.
-
Rene Saarsoo authored
Introduce new Tag class just of this merging.
-
Rene Saarsoo authored
-
Rene Saarsoo authored
For now introduce the merge context of :method_like.
-