first draft of docs are done

This commit is contained in:
Jeremy Ashkenas
2009-12-23 23:01:39 -08:00
parent 0a58eeef2b
commit 705b293982
6 changed files with 128 additions and 111 deletions

View File

@@ -10,7 +10,7 @@ module CoffeeScript
class CommandLine
BANNER = <<-EOS
coffee-script compiles CoffeeScript files into JavaScript.
coffee-script compiles CoffeeScript source files into JavaScript.
Usage:
coffee-script path/to/script.cs

View File

@@ -273,13 +273,15 @@ rule
# Try/catch/finally exception handling blocks.
Try:
TRY Expressions CATCH IDENTIFIER
Expressions "." { result = TryNode.new(val[1], val[3], val[4]) }
| TRY Expressions FINALLY
Expressions "." { result = TryNode.new(val[1], nil, nil, val[3]) }
| TRY Expressions CATCH IDENTIFIER
Expressions
FINALLY Expressions "." { result = TryNode.new(val[1], val[3], val[4], val[6]) }
TRY Expressions Catch "." { result = TryNode.new(val[1], val[2][0], val[2][1]) }
| TRY Expressions Catch
FINALLY Then Expressions "." { result = TryNode.new(val[1], val[2][0], val[2][1], val[5]) }
;
# A catch clause.
Catch:
/* nothing */ { result = [nil, nil] }
| CATCH IDENTIFIER Then Expressions { result = [val[1], val[3]] }
;
# Throw an exception.

View File

@@ -541,7 +541,8 @@ module CoffeeScript
o = super(o)
indent = o[:indent]
o[:indent] += TAB
catch_part = @recovery && " catch (#{@error}) {\n#{@recovery.compile(o)}\n#{indent}}"
error_part = @error ? " (#{@error}) " : ' '
catch_part = @recovery && " catch#{error_part}{\n#{@recovery.compile(o)}\n#{indent}}"
finally_part = @finally && " finally {\n#{@finally.compile(o.merge(:assign => nil, :return => nil))}\n#{indent}}"
write("try {\n#{@try.compile(o)}\n#{indent}}#{catch_part}#{finally_part}")
end