diff options
author | Gilles Dubochet <gilles.dubochet@epfl.ch> | 2010-02-03 17:03:58 +0000 |
---|---|---|
committer | Gilles Dubochet <gilles.dubochet@epfl.ch> | 2010-02-03 17:03:58 +0000 |
commit | a6eecfb04532c83a715d520e885250e8de808f9e (patch) | |
tree | cbfbf98476467a63c3e28652e767a431655ca46e /src/compiler/scala/tools/nsc/ast/parser/Parsers.scala | |
parent | 909924acba60dadee5647e405c0bb9a2676f4a70 (diff) | |
download | scala-a6eecfb04532c83a715d520e885250e8de808f9e.tar.gz scala-a6eecfb04532c83a715d520e885250e8de808f9e.tar.bz2 scala-a6eecfb04532c83a715d520e885250e8de808f9e.zip |
[scaladoc] Optional link to source (set paramet...
[scaladoc] Optional link to source (set parameter "-doc-source-url").
Support for commenting packages (using package objects). Contributed by
Perdo Furlanetto. Also: small performance improvements, short comment
extraction is more robust (but no HTML tags allowed in first sentence),
small code clean-ups. Checked by dubochet, no review.
Diffstat (limited to 'src/compiler/scala/tools/nsc/ast/parser/Parsers.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/ast/parser/Parsers.scala | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala b/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala index 58552e18e5..117fbde419 100644 --- a/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala +++ b/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala @@ -2469,11 +2469,15 @@ self => val stats = new ListBuffer[Tree] while (in.token != RBRACE && in.token != EOF) { if (in.token == PACKAGE) { - in.flushDoc val start = in.skipToken() - stats += { - if (in.token == OBJECT) makePackageObject(start, objectDef(in.offset, NoMods)) - else packaging(start) + stats ++= { + if (in.token == OBJECT) { + joinComment(List(makePackageObject(start, objectDef(in.offset, NoMods)))) + } + else { + in.flushDoc + List(packaging(start)) + } } } else if (in.token == IMPORT) { in.flushDoc @@ -2631,15 +2635,15 @@ self => while (in.token == SEMI) in.nextToken() val start = in.offset if (in.token == PACKAGE) { - in.flushDoc in.nextToken() if (in.token == OBJECT) { - ts += makePackageObject(start, objectDef(in.offset, NoMods)) + ts ++= joinComment(List(makePackageObject(start, objectDef(in.offset, NoMods)))) if (in.token != EOF) { acceptStatSep() ts ++= topStatSeq() } } else { + in.flushDoc val pkg = qualId() newLineOptWhenFollowedBy(LBRACE) if (in.token == EOF) { |