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))