The cl-uglify-js Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The cl-uglify-js Reference Manual

This is the cl-uglify-js Reference Manual, generated automatically by Declt version 2.4 "Will Decker" on Wed Jun 20 11:26:28 2018 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Introduction





cl-uglify-js -- JavaScript compressor/beautifier for Common Lisp












cl-uglify-js – JavaScript compressor/beautifier for Common Lisp

This is a Common Lisp version of UglifyJS. It works on data produced by parse-js to generate a “minified” version of the code. Currently it can:

It's faster than YUI Compressor, Google Closure and UglifyJS, and almost as good as (and a bit safer than) Google Closure in terms of compressed code size.

See the UglifyJS page for more information.

1 Dependencies

I only tested it on SBCL.

2 API

The following functions are exported:

2.1 ast-squeeze (ast &key (sequences T) (dead-code T))

Applies various compression techniques. It expects an AST (as returned by parse-js) and returns a new, compatible AST (possibly sharing structure with the original one!).

Optional keyword arguments:

  • sequences (default T) — set this to NIL to disable grouping consecutive statements into a sequence using the “comma operator”.
  • dead-code (default T) — if you pass NIL it will not attempt to remove unreachable code.

When it encounters unreachable code and dead-code is true, this function will warn about it. The warnings go to *error-output*, so rebind that if you want to catch the messages.

2.2 ast-mangle (ast &key toplevel)

“Mangles” variable names (renames all variables to shorter version). This function is careful not to affect the semantics of the code. It will avoid renaming undeclared variables (which could possibly be defined in some other script), and avoid renaming names that are under the influence of a with block, or within the context of an eval call.

Optional keyword arguments:

  • toplevel (default NIL) — pass true here if you want to mangle the toplevel scope. By default we don't.

Note that this function returns a somewhat incompatible AST. Literal names (which are normally strings) are replaced with lambda-s that would return the mangled version. ast-gen-code knows how to deal with this.

2.3 ast-gen-code (ast &key (beautify T) (indent-level 4) (indent-start 0) quote-keys)

Given an abstract syntax tree, this function returns the corresponding JavaScript code (as a string).

Optional keyword arguments:

  • beautify (default true). By default ast-gen-code returns nicely indented code. If you want to compress, pass :beautify NIL.

The other arguments only make sense if beautify is true:

  • indent-level: number of spaces to use for indentation. Note that case/default statements are indented to half of this number, so better pass an even one.
  • indent-start: the whole code will be indented by this number of spaces (default 0).
  • quote-keys: by default, we only quote keys that cannot be used otherwise (i.e. reserved words such as "while"). Pass this true to quote all keys regardless.

2.4 split-code (code &optional (maxlen (* 32 1024)))

Given `code' (a string) it will split it by adding a newline every `maxlen' (or so) characters. I found both Firefox and Chrome croak with weird errors when the whole code was on a single 680K line, so even if it adds a few more bytes this step should be done for safety. The default `maxlen' is 32K.

3 Compress one file

To compress one file, you would do something like this:

(ast-gen-code
  (ast-mangle
    (ast-squeeze
      (with-open-file (in "/path/to/file.js")
        (parse-js:parse-js in)))) :beautify nil)

Some simplified API will be available at some point, though I'm not sure it would be really useful.

4 License

Copyright 2010 (c) Mihai Bazon <mihai.bazon@gmail.com>

This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
damages arising from the use of this software.

Permission is granted to anyone to use this software for any
purpose, including commercial applications, and to alter it and
redistribute it freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must
   not claim that you wrote the original software. If you use this
   software in a product, an acknowledgment in the product
   documentation would be appreciated but is not required.

2. Altered source versions must be plainly marked as such, and must
   not be misrepresented as being the original software.

3. This notice may not be removed or altered from any source
   distribution.

Author: Mihai Bazon

Date: 2011-01-24 00:09:50 EET

HTML generated by org-mode 7.01trans in emacs 23


Next: , Previous: , Up: Top   [Contents][Index]

2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 cl-uglify-js

Author

Mihai Bazon <mihai.bazon@gmail.com>

Description

JavaScript compressor/beautifier on top of PARSE-JS

Dependencies
Source

cl-uglify-js.asd (file)

Component

src (module)


Next: , Previous: , Up: Top   [Contents][Index]

3 Modules

Modules are listed depth-first from the system components tree.


Previous: , Up: Modules   [Contents][Index]

3.1 cl-uglify-js/src

Parent

cl-uglify-js (system)

Location

src/

Components

Next: , Previous: , Up: Top   [Contents][Index]

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

4.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.1 cl-uglify-js.asd

Location

cl-uglify-js.asd

Systems

cl-uglify-js (system)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.2 cl-uglify-js/src/package.lisp

Parent

src (module)

Location

src/package.lisp

Packages

cl-uglify-js


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.3 cl-uglify-js/src/constants.lisp

Dependency

package.lisp (file)

Parent

src (module)

Location

src/constants.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.4 cl-uglify-js/src/walker.lisp

Dependency

constants.lisp (file)

Parent

src (module)

Location

src/walker.lisp

Exported Definitions
Internal Definitions

varlist (function)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.5 cl-uglify-js/src/mangle.lisp

Dependency

walker.lisp (file)

Parent

src (module)

Location

src/mangle.lisp

Exported Definitions

ast-mangle (function)

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.6 cl-uglify-js/src/squeeze.lisp

Dependency

mangle.lisp (file)

Parent

src (module)

Location

src/squeeze.lisp

Exported Definitions

ast-squeeze (function)

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.7 cl-uglify-js/src/codegen.lisp

Dependency

squeeze.lisp (file)

Parent

src (module)

Location

src/codegen.lisp

Exported Definitions

ast-gen-code (function)

Internal Definitions

Previous: , Up: Lisp files   [Contents][Index]

4.1.8 cl-uglify-js/src/split.lisp

Dependency

codegen.lisp (file)

Parent

src (module)

Location

src/split.lisp

Exported Definitions

split-code (function)


Next: , Previous: , Up: Top   [Contents][Index]

5 Packages

Packages are listed by definition order.


Previous: , Up: Packages   [Contents][Index]

5.1 cl-uglify-js

Source

package.lisp (file)

Nickname

uglify-js

Use List
Exported Definitions
Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

6.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.1 Macros

Macro: ast-case EXPR &body BODY
Package

cl-uglify-js

Source

walker.lisp (file)

Macro: ast-walk (AST &optional EXPR WALK STACK) &body BODY
Package

cl-uglify-js

Source

walker.lisp (file)


Previous: , Up: Exported definitions   [Contents][Index]

6.1.2 Functions

Function: ast-gen-code AST &key BEAUTIFY INDENT-LEVEL INDENT-START QUOTE-KEYS
Package

cl-uglify-js

Source

codegen.lisp (file)

Function: ast-mangle AST &key TOPLEVEL
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: ast-squeeze AST &key SEQUENCES DEAD-CODE &aux STACK
Package

cl-uglify-js

Source

squeeze.lisp (file)

Function: split-code CODE &optional MAXLEN

Inserts newlines into the given ‘code’ (must be a string) as soon as lines are bigger than ‘maxlen’ (default 32K). Note that the lines in the output will generally be bigger than ‘maxlen’. This function splits code only *before* a :KEYWORD, :ATOM, :NAME or :PUNC, and it never splits *after* a :KEYWORD (in order not to break the JS semantics, which say that no newline is allowed between return or throw and their arguments).

Package

cl-uglify-js

Source

split.lisp (file)


Previous: , Up: Definitions   [Contents][Index]

6.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.1 Special variables

Special Variable: *codegen-beautify*
Package

cl-uglify-js

Source

constants.lisp (file)

Special Variable: *codegen-indent-level*
Package

cl-uglify-js

Source

constants.lisp (file)

Special Variable: *codegen-indent-start*
Package

cl-uglify-js

Source

constants.lisp (file)

Special Variable: *codegen-newline*
Package

cl-uglify-js

Source

constants.lisp (file)

Special Variable: *codegen-quote-keys*
Package

cl-uglify-js

Source

constants.lisp (file)

Special Variable: *codegen-tl-newline*
Package

cl-uglify-js

Source

constants.lisp (file)

Special Variable: *current-scope*
Package

cl-uglify-js

Source

mangle.lisp (file)

Special Variable: *precedence*
Package

cl-uglify-js

Source

constants.lisp (file)

Special Variable: +json-lisp-escaped-chars+

Mapping between JSON String escape sequences and Lisp chars.

Package

cl-uglify-js

Source

constants.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.2 Macros

Macro: awhen++ (VAR COND) &body BODY
Package

cl-uglify-js

Source

squeeze.lisp (file)

Macro: foreach-scope-parent (SCOPE VAR) &body BODY
Package

cl-uglify-js

Source

mangle.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.3 Functions

Function: aborts NODE
Package

cl-uglify-js

Source

squeeze.lisp (file)

Function: base54 NUM
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: best-of AST1 AST2
Package

cl-uglify-js

Source

squeeze.lisp (file)

Function: boolean-expr EXPR
Package

cl-uglify-js

Source

squeeze.lisp (file)

Function: conditional COND THEN &optional ELSE
Package

cl-uglify-js

Source

squeeze.lisp (file)

Function: copy-scope INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: copy-topval INSTANCE
Package

cl-uglify-js

Source

constants.lisp (file)

Function: curry FUNC &rest A1
Package

cl-uglify-js

Source

constants.lisp (file)

Function: empty B
Package

cl-uglify-js

Source

squeeze.lisp (file)

Function: is-identifier NAME
Package

cl-uglify-js

Source

constants.lisp (file)

Function: make-scope &key (NAMES NAMES) (MANGLED MANGLED) (REV-MANGLED REV-MANGLED) (CNAME CNAME) (REFS REFS) (USES-EVAL USES-EVAL) (USES-WITH USES-WITH) (LEVEL LEVEL) (PARENT PARENT) (CHILDREN CHILDREN)
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: make-topval &key (V V)
Package

cl-uglify-js

Source

constants.lisp (file)

Function: mymap FUNC LIST
Package

cl-uglify-js

Source

constants.lisp (file)

Function: negate C
Package

cl-uglify-js

Source

squeeze.lisp (file)

Function: new-scope &optional PARENT
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: quote-string STR
Package

cl-uglify-js

Source

codegen.lisp (file)

Function: rmblock BLOCK
Package

cl-uglify-js

Source

squeeze.lisp (file)

Function: scope-children INSTANCE
Function: (setf scope-children) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-cname INSTANCE
Function: (setf scope-cname) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-define SCOPE NAME
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-get-mangled SCOPE NAME &optional MAKE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-has SCOPE NAME
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-has-mangled SCOPE MNAME
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-level INSTANCE
Function: (setf scope-level) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-mangled INSTANCE
Function: (setf scope-mangled) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-names INSTANCE
Function: (setf scope-names) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-next-mangled SCOPE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-p OBJECT
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-parent INSTANCE
Function: (setf scope-parent) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-refs INSTANCE
Function: (setf scope-refs) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-rev-mangled INSTANCE
Function: (setf scope-rev-mangled) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-uses-eval INSTANCE
Function: (setf scope-uses-eval) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: scope-uses-with INSTANCE
Function: (setf scope-uses-with) VALUE INSTANCE
Package

cl-uglify-js

Source

mangle.lisp (file)

Function: stick &rest ELEMENTS
Package

cl-uglify-js

Source

codegen.lisp (file)

Function: topval-p OBJECT
Package

cl-uglify-js

Source

constants.lisp (file)

Function: topval-v INSTANCE
Function: (setf topval-v) VALUE INSTANCE
Package

cl-uglify-js

Source

constants.lisp (file)

Function: varlist NAMES
Package

cl-uglify-js

Source

walker.lisp (file)

Function: write-json-chars QUOTE S STREAM

Write JSON representations (chars or escape sequences) of characters in string S to STREAM.

Package

cl-uglify-js

Source

codegen.lisp (file)

Function: write-regexp S STREAM
Package

cl-uglify-js

Source

codegen.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.4 Generic functions

Generic Function: binary-op OP LEFT RIGHT
Package

cl-uglify-js

Source

squeeze.lisp (file)

Methods
Method: binary-op (OP (eql +)) (LEFT number) (RIGHT number)
Method: binary-op (OP (eql -)) (LEFT number) (RIGHT number)
Method: binary-op (OP (eql *)) (LEFT number) (RIGHT number)
Method: binary-op (OP (eql /)) (LEFT number) (RIGHT number)
Method: binary-op (OP (eql <<)) (LEFT number) (RIGHT number)
Method: binary-op (OP (eql >>)) (LEFT number) (RIGHT number)
Method: binary-op (OP (eql >>>)) (LEFT number) (RIGHT number)
Method: binary-op (OP (eql +)) LEFT RIGHT
Method: binary-op OP (LEFT number) (RIGHT string)
Method: binary-op OP (LEFT string) (RIGHT number)
Method: binary-op OP (LEFT string) (RIGHT string)
Method: binary-op OP LEFT RIGHT

Previous: , Up: Internal definitions   [Contents][Index]

6.2.5 Structures

Structure: scope ()
Package

cl-uglify-js

Source

mangle.lisp (file)

Direct superclasses

structure-object (structure)

Direct slots
Slot: names
Initform

(make-hash-table :test (function equal))

Readers

scope-names (function)

Writers

(setf scope-names) (function)

Slot: mangled
Initform

(make-hash-table :test (function equal))

Readers

scope-mangled (function)

Writers

(setf scope-mangled) (function)

Slot: rev-mangled
Initform

(make-hash-table :test (function equal))

Readers

scope-rev-mangled (function)

Writers

(setf scope-rev-mangled) (function)

Slot: cname
Initform

-1

Readers

scope-cname (function)

Writers

(setf scope-cname) (function)

Slot: refs
Initform

(make-hash-table :test (function equal))

Readers

scope-refs (function)

Writers

(setf scope-refs) (function)

Slot: uses-eval
Type

boolean

Readers

scope-uses-eval (function)

Writers

(setf scope-uses-eval) (function)

Slot: uses-with
Type

boolean

Readers

scope-uses-with (function)

Writers

(setf scope-uses-with) (function)

Slot: level
Type

integer

Initform

0

Readers

scope-level (function)

Writers

(setf scope-level) (function)

Slot: parent
Type

(or null cl-uglify-js::scope)

Readers

scope-parent (function)

Writers

(setf scope-parent) (function)

Slot: children
Type

list

Readers

scope-children (function)

Writers

(setf scope-children) (function)

Structure: topval ()
Package

cl-uglify-js

Source

constants.lisp (file)

Direct superclasses

structure-object (structure)

Direct slots
Slot: v
Readers

topval-v (function)

Writers

(setf topval-v) (function)


Previous: , Up: Top   [Contents][Index]

Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts

Jump to:   C   F   L   M  
Index Entry  Section

C
cl-uglify-js.asd: The cl-uglify-js<dot>asd file
cl-uglify-js/src: The cl-uglify-js/src module
cl-uglify-js/src/codegen.lisp: The cl-uglify-js/src/codegen<dot>lisp file
cl-uglify-js/src/constants.lisp: The cl-uglify-js/src/constants<dot>lisp file
cl-uglify-js/src/mangle.lisp: The cl-uglify-js/src/mangle<dot>lisp file
cl-uglify-js/src/package.lisp: The cl-uglify-js/src/package<dot>lisp file
cl-uglify-js/src/split.lisp: The cl-uglify-js/src/split<dot>lisp file
cl-uglify-js/src/squeeze.lisp: The cl-uglify-js/src/squeeze<dot>lisp file
cl-uglify-js/src/walker.lisp: The cl-uglify-js/src/walker<dot>lisp file

F
File, Lisp, cl-uglify-js.asd: The cl-uglify-js<dot>asd file
File, Lisp, cl-uglify-js/src/codegen.lisp: The cl-uglify-js/src/codegen<dot>lisp file
File, Lisp, cl-uglify-js/src/constants.lisp: The cl-uglify-js/src/constants<dot>lisp file
File, Lisp, cl-uglify-js/src/mangle.lisp: The cl-uglify-js/src/mangle<dot>lisp file
File, Lisp, cl-uglify-js/src/package.lisp: The cl-uglify-js/src/package<dot>lisp file
File, Lisp, cl-uglify-js/src/split.lisp: The cl-uglify-js/src/split<dot>lisp file
File, Lisp, cl-uglify-js/src/squeeze.lisp: The cl-uglify-js/src/squeeze<dot>lisp file
File, Lisp, cl-uglify-js/src/walker.lisp: The cl-uglify-js/src/walker<dot>lisp file

L
Lisp File, cl-uglify-js.asd: The cl-uglify-js<dot>asd file
Lisp File, cl-uglify-js/src/codegen.lisp: The cl-uglify-js/src/codegen<dot>lisp file
Lisp File, cl-uglify-js/src/constants.lisp: The cl-uglify-js/src/constants<dot>lisp file
Lisp File, cl-uglify-js/src/mangle.lisp: The cl-uglify-js/src/mangle<dot>lisp file
Lisp File, cl-uglify-js/src/package.lisp: The cl-uglify-js/src/package<dot>lisp file
Lisp File, cl-uglify-js/src/split.lisp: The cl-uglify-js/src/split<dot>lisp file
Lisp File, cl-uglify-js/src/squeeze.lisp: The cl-uglify-js/src/squeeze<dot>lisp file
Lisp File, cl-uglify-js/src/walker.lisp: The cl-uglify-js/src/walker<dot>lisp file

M
Module, cl-uglify-js/src: The cl-uglify-js/src module

Jump to:   C   F   L   M  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   (  
A   B   C   E   F   G   I   M   N   Q   R   S   T   V   W  
Index Entry  Section

(
(setf scope-children): Internal functions
(setf scope-cname): Internal functions
(setf scope-level): Internal functions
(setf scope-mangled): Internal functions
(setf scope-names): Internal functions
(setf scope-parent): Internal functions
(setf scope-refs): Internal functions
(setf scope-rev-mangled): Internal functions
(setf scope-uses-eval): Internal functions
(setf scope-uses-with): Internal functions
(setf topval-v): Internal functions

A
aborts: Internal functions
ast-case: Exported macros
ast-gen-code: Exported functions
ast-mangle: Exported functions
ast-squeeze: Exported functions
ast-walk: Exported macros
awhen++: Internal macros

B
base54: Internal functions
best-of: Internal functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
binary-op: Internal generic functions
boolean-expr: Internal functions

C
conditional: Internal functions
copy-scope: Internal functions
copy-topval: Internal functions
curry: Internal functions

E
empty: Internal functions

F
foreach-scope-parent: Internal macros
Function, (setf scope-children): Internal functions
Function, (setf scope-cname): Internal functions
Function, (setf scope-level): Internal functions
Function, (setf scope-mangled): Internal functions
Function, (setf scope-names): Internal functions
Function, (setf scope-parent): Internal functions
Function, (setf scope-refs): Internal functions
Function, (setf scope-rev-mangled): Internal functions
Function, (setf scope-uses-eval): Internal functions
Function, (setf scope-uses-with): Internal functions
Function, (setf topval-v): Internal functions
Function, aborts: Internal functions
Function, ast-gen-code: Exported functions
Function, ast-mangle: Exported functions
Function, ast-squeeze: Exported functions
Function, base54: Internal functions
Function, best-of: Internal functions
Function, boolean-expr: Internal functions
Function, conditional: Internal functions
Function, copy-scope: Internal functions
Function, copy-topval: Internal functions
Function, curry: Internal functions
Function, empty: Internal functions
Function, is-identifier: Internal functions
Function, make-scope: Internal functions
Function, make-topval: Internal functions
Function, mymap: Internal functions
Function, negate: Internal functions
Function, new-scope: Internal functions
Function, quote-string: Internal functions
Function, rmblock: Internal functions
Function, scope-children: Internal functions
Function, scope-cname: Internal functions
Function, scope-define: Internal functions
Function, scope-get-mangled: Internal functions
Function, scope-has: Internal functions
Function, scope-has-mangled: Internal functions
Function, scope-level: Internal functions
Function, scope-mangled: Internal functions
Function, scope-names: Internal functions
Function, scope-next-mangled: Internal functions
Function, scope-p: Internal functions
Function, scope-parent: Internal functions
Function, scope-refs: Internal functions
Function, scope-rev-mangled: Internal functions
Function, scope-uses-eval: Internal functions
Function, scope-uses-with: Internal functions
Function, split-code: Exported functions
Function, stick: Internal functions
Function, topval-p: Internal functions
Function, topval-v: Internal functions
Function, varlist: Internal functions
Function, write-json-chars: Internal functions
Function, write-regexp: Internal functions

G
Generic Function, binary-op: Internal generic functions

I
is-identifier: Internal functions

M
Macro, ast-case: Exported macros
Macro, ast-walk: Exported macros
Macro, awhen++: Internal macros
Macro, foreach-scope-parent: Internal macros
make-scope: Internal functions
make-topval: Internal functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
Method, binary-op: Internal generic functions
mymap: Internal functions

N
negate: Internal functions
new-scope: Internal functions

Q
quote-string: Internal functions

R
rmblock: Internal functions

S
scope-children: Internal functions
scope-cname: Internal functions
scope-define: Internal functions
scope-get-mangled: Internal functions
scope-has: Internal functions
scope-has-mangled: Internal functions
scope-level: Internal functions
scope-mangled: Internal functions
scope-names: Internal functions
scope-next-mangled: Internal functions
scope-p: Internal functions
scope-parent: Internal functions
scope-refs: Internal functions
scope-rev-mangled: Internal functions
scope-uses-eval: Internal functions
scope-uses-with: Internal functions
split-code: Exported functions
stick: Internal functions

T
topval-p: Internal functions
topval-v: Internal functions

V
varlist: Internal functions

W
write-json-chars: Internal functions
write-regexp: Internal functions

Jump to:   (  
A   B   C   E   F   G   I   M   N   Q   R   S   T   V   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   *   +  
C   L   M   N   P   R   S   U   V  
Index Entry  Section

*
*codegen-beautify*: Internal special variables
*codegen-indent-level*: Internal special variables
*codegen-indent-start*: Internal special variables
*codegen-newline*: Internal special variables
*codegen-quote-keys*: Internal special variables
*codegen-tl-newline*: Internal special variables
*current-scope*: Internal special variables
*precedence*: Internal special variables

+
+json-lisp-escaped-chars+: Internal special variables

C
children: Internal structures
cname: Internal structures

L
level: Internal structures

M
mangled: Internal structures

N
names: Internal structures

P
parent: Internal structures

R
refs: Internal structures
rev-mangled: Internal structures

S
Slot, children: Internal structures
Slot, cname: Internal structures
Slot, level: Internal structures
Slot, mangled: Internal structures
Slot, names: Internal structures
Slot, parent: Internal structures
Slot, refs: Internal structures
Slot, rev-mangled: Internal structures
Slot, uses-eval: Internal structures
Slot, uses-with: Internal structures
Slot, v: Internal structures
Special Variable, *codegen-beautify*: Internal special variables
Special Variable, *codegen-indent-level*: Internal special variables
Special Variable, *codegen-indent-start*: Internal special variables
Special Variable, *codegen-newline*: Internal special variables
Special Variable, *codegen-quote-keys*: Internal special variables
Special Variable, *codegen-tl-newline*: Internal special variables
Special Variable, *current-scope*: Internal special variables
Special Variable, *precedence*: Internal special variables
Special Variable, +json-lisp-escaped-chars+: Internal special variables

U
uses-eval: Internal structures
uses-with: Internal structures

V
v: Internal structures

Jump to:   *   +  
C   L   M   N   P   R   S   U   V  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   C   P   S   T  
Index Entry  Section

C
cl-uglify-js: The cl-uglify-js system
cl-uglify-js: The cl-uglify-js package

P
Package, cl-uglify-js: The cl-uglify-js package

S
scope: Internal structures
Structure, scope: Internal structures
Structure, topval: Internal structures
System, cl-uglify-js: The cl-uglify-js system

T
topval: Internal structures

Jump to:   C   P   S   T