public
Description: YUI Javascript Documentation Tool
Homepage: http://yuilibrary.com/projects/yuidoc
Clone URL: git://github.com/yui/yuidoc.git
commit  9e4e1282f74dd03919fb97984d54beddd7945fdb
tree    5beaedb4903ed6f86e9d4333ae22bb06d67e47c1
parent  005f9992449cd5676e4c9f36eb57532a89e3f4bf
yuidoc / TAGS
100644 136 lines (98 sloc) 4.053 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
 
General Notes:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
--General Notes:
 
* All comment blocks should have one, and only one, of the following tags:
  module, class, property, method. If one is not supplied, the parser will
  complain and the block will likely be skipped.
 
* The four block types require a description. This description should appear
  as the first thing in your comment block.
 
  /**
   * My method description. Like other pieces of your comment blocks,
   * this can span multiple lines.
   * @method methodName
   */
 
  This might work too, but I have not tried it.. I like the other convention:
 
  /**
   * @method methodName
   * @description My method description. Like other pieces of your
   * comment blocks, this can span multiple lines.
   */
 
* It will warn about any tag that does not contain a description, with the
  exception of the following: constructor, public, private, static
 
 
Supported Tags:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
@module modulename
    Include one these blocks in one of your files for your util/widget. The
    description will appear on the splash page.
 
    NOTE: At least one @module is required. Put one of these near the top
    of your source and use it to describe your component. Do not combine
    @module with @class.
 
@namespace YAHOO.namespace
    While it is optional to provide a namespace, it is recommended. This lets you
    describe your class just with the name: YAHOO.util.Event -> Event. It only
    needs to be included one time as long as this is the first file that is parsed.
    Probably safer to put it in each file.
 
@class ClassName
 
@extends YAHOO.namespace.ClassName
 
@property propertyName
 
@config configName
    similar to @property, but separates config items from normal properties
 
@attribute configName
    similar to @config, but also auto-generates the [event]Change and
    the before[Event]Change events
 
@method methodName
 
@event
    similar to @method, but no @return, and the @params define the signature
    the listeners are executed with.
 
@constructor
    Only put this if the class can be instantiated
 
@static
    For classes, methods, properties, etc ...
    Probably should have either @constructor or @static in the @class block
 
@final
    for constants (properties and read-only configs)
 
@param {type} name description -or-
@param name {type} description
    Supported in method blocks or class/constructor blocks.
 
@for ClassName
    Used to define an inner class:
        /**
         * An inner class
         * @class foo
         * @for OuterClass
         */
    After the class is done, you need to inform the parser to start working on
    the outer class again:
        /**
         * Another method for the outer class
         * @method bar
         * @for OuterClass
         */
 
@return {type} description
    for methods
 
@type type
    for properties and configs
 
@see
    This is barely supported at this point
 
@deprecated explaination
    The explaination does not need to be provided, but the parser will warn if
    you don't. Usually you'll want to say what to use instead
 
@public
    Allowed to exist as a singular tag, but does nothing. Everthing is assumed
    public unless marked private
 
@private
    Use to mark that the method/property should not be accessed by implementers
    (even if it is accessible to them). By default, privates are not present
    in the api docs.
 
@protected
    Use to indicate the method/property should not be accessed by implementers
    unless they are subclassing.
 
@requires module1, module2
    Supported in the @module declaration. The comma separated list of module
    short names will eventually be matched against a lookup table when
    cross-linking is supported
 
@default
    The default value of a property or config
 
@uses YAHOO.namespace.ClassName [method1, method2]
    For classes that use YAHOO.augment
    The optional method/properties are not supported yet