js--class-styles
js--class-styles is a variable defined in `
js.el
'.
Its value is shown
below.
- This variable may be risky if used as a file-local variable.
Documentation:
List of JavaScript class definition styles.
A class definition style is a plist with the following keys:
:name is a human-readable name of the class type
:class-decl is a regular expression giving the start of the
class. Its first group must match the name of its class. If there
is a parent class, the second group should match, and it should be
the name of the class.
If :prototype is present and non-nil, the parser will merge
declarations for this constructs with others at the same lexical
level that have the same name. Otherwise, multiple definitions
will create multiple top-level entries. Don't use :prototype
unnecessarily: it has an associated cost in performance.
If :strip-prototype is present and non-nil, then if the class
name as matched contains
Value:
((:name "Plain" :class-decl "^\\s-*\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)\\.prototype\\s-*=\\s-*{" :prototype t :contexts
(toplevel)
:framework javascript)
(:name "MochiKit" :class-decl "^\\s-*MochiKit\\.Base\\.update\\s-*(\\s-*\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)" :prototype t :contexts
(toplevel)
:framework mochikit)
(:name "Prototype (Obsolete)" :class-decl "^\\s-*\\(?:var\\s-+\\)?\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)\\s-*=\\s-*Class\\.create()" :contexts
(toplevel)
:framework prototype)
(:name "Prototype (Modern)" :class-decl "^\\s-*\\(?:var\\s-+\\)?\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)\\s-*=\\s-*Class\\.create\\s-*(\\s-*\\(?:\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)\\s-*,\\s-*\\)?{?" :contexts
(toplevel)
:framework prototype)
(:name "Prototype (Object.extend)" :class-decl "^\\s-*Object\\.extend\\s-*(\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)\\s-*,\\s-*{" :prototype t :contexts
(toplevel)
:framework prototype)
(:name "Prototype (Object.extend) 2" :class-decl "^\\s-*\\(?:var\\s-+\\)?\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)\\s-*=\\s-*Object\\.extend\\s-*(" :prototype t :contexts
(toplevel)
:framework prototype)
(:name "Dojo" :class-decl "^\\s-*dojo\\.declare\\s-*(\"\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)" :contexts
(toplevel)
:framework dojo)
(:name "ExtJS (style 1)" :class-decl "^\\s-*Ext\\.extend\\s-*(\\s-*\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)\\s-*,\\s-*\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)" :prototype t :contexts
(toplevel)
:framework extjs)
(:name "ExtJS (style 2)" :class-decl "^\\s-*\\(?:var\\s-+\\)?\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)\\s-*=\\s-*Ext\\.extend\\s-*(\\s-*\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)" :contexts
(toplevel)
:framework extjs)
(:name "Merrill Press" :class-decl "^\\s-*var\\s-+\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)\\s-*=\\s-*\\([a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\(?:\\.[a-zA-Z_$]\\(?:\\s_\\|\\sw\\)*\\)*\\)\\.extend\\(?:Final\\)?\\s-*(\\s-*{?\\s-*$" :contexts
(toplevel)
:framework merrillpress))