Commit Graph

27 Commits

Author SHA1 Message Date
Milo Turner
275d7974cd Added #:cut pattern directive 2018-03-05 15:03:45 +01:00
Leif Andersen
dd2a0dceb3
define-simple-macro now works with an ~or macro. (#1949)
The previous definition of define-simple-macro would fail (with
a very poor error message) if the user made a simple macro like:

(define-simple-macro (~or a b)
  (let ([tmp a])
    (if tmp tmp b)))

While the define-simple-macro form does allow syntax-parse patterns,
this should not be enabled for the initial head pattern, as described
in the define-simple-macro documentation.
2018-02-09 10:41:27 -05:00
Ryan Culpepper
9be7bf53cf syntax/parse: add unwindable state: syntax-parse-state-{ref,set!,...} 2017-12-18 09:10:31 +01:00
Ryan Culpepper
e0a8058db5 syntax/parse: add docs for ~undo, #:undo 2017-12-09 13:42:12 +01:00
Ryan Culpepper
e61d8aa1b2 syntax/parse template: update docs 2017-08-23 02:01:27 -04:00
Jordan Johnson
58dfcee14a Clearly distinguish ~datum/~literal in examples
As discussed on the racket users list (subj: ~literal vs ~datum) at https://groups.google.com/d/msg/racket-users/KWANfGc7qcI/G_MClWJpBAAJ
New example based on code from Jens Axel Soegaard.
Caveat: I've run this in DrRacket with (require (for-syntax syntax/parse)) to verify the three distinct outputs, but am submitting this PR in-browser, so I haven't run the doc build on it myself.
2017-08-03 22:26:43 -04:00
Ryan Culpepper
44eb5532ad syntax/parse: add ~or* and ~alt, like ~or{S,H} and ~or{EH}, respectively 2017-06-24 17:07:55 -04:00
Ryan Culpepper
c082f130cb support string, bytes (bindings from racket) as stxclass refs
add compile-time table as alternative to stxclass binding
2017-05-18 12:54:26 -04:00
Ryan Culpepper
ce9b309dbc defstxclass uses #:kind "syntax class" for better labeling 2017-05-18 12:54:26 -04:00
Georges Dupéron
5904cea99a Small changes to the documentation
* Fixed typo in the docs for serialization (serializable-struct/version → serializable-struct/versions)
* Fixed typo in scribble documentation (head pattern → a-pattern)
* Made the order of the argument descriptions match the order of the arguments in the documentation for import and export
2017-05-12 16:01:29 -05:00
Sam Caldwell
9f34be4b83 fix typo (#1620) 2017-02-17 21:54:37 +00:00
Ryan Culpepper
c08a2fd57c syntax/parse: add #:and and #:post side-clauses 2016-09-29 17:21:07 -04:00
Ryan Culpepper
6caec0249f syntax/parse: document ~post 2016-09-29 15:53:26 -04:00
Ryan Culpepper
b7bd836f0f document this-syntax and #:auto-nested-attributes
fixes #1185, #1350
2016-07-29 17:39:33 -04:00
Leif Andersen
f6c9f058e4 Add documentation for syntax/parse/lib/function-header 2016-07-20 14:00:10 -04:00
Ryan Culpepper
731c7dfe12 fixed doc typo 2016-05-11 16:14:53 -04:00
Ryan Culpepper
6da3e88bd8 fix and update syntax/parse/debug 2016-04-18 09:13:11 -04:00
Georges Dupéron
b0cad81f2d Clarification and typo in the documentation concerning the error messages for the ~between pattern in syntax/parse. 2016-04-07 15:01:01 +02:00
Stephen Chang
c868c7b68d doc typos 2015-10-27 16:11:15 -04:00
Alex Knauth
6b93b18a1a syntax/parse: update pattern expander docs 2015-10-16 18:03:40 -04:00
Ryan Culpepper
4f5c54db54 syntax/parse: fix use of evaluators in docs 2015-09-11 17:35:24 -04:00
Ryan Culpepper
8d9eb05347 syntax/parse: accept #:context (list symbol/#f syntax)
The symbol is used as the "who" field in the error message.

Also fix lazy-require of runtime-report.rkt in residual.rkt; don't
load until syntax-parse actually needs to produce an error report.
(Previously was loaded to create handler whenever syntax-parse code ran.)
2015-09-10 21:49:21 -04:00
Ryan Culpepper
6bbcbfb3d4 fix rendering of multi-line syntax errors 2015-08-11 18:43:35 -04:00
Stephen Chang
fe2e480ef1 syntax/parse doc typo in ~describe 2015-08-07 18:40:14 -04:00
Stephen Chang
bfef7f54a3 pattern-expander docs: add note about names 2015-07-31 17:08:26 -04:00
AlexKnauth
fae92a19f5 add define-syntax-parser
idea from
863d39229f (diff-3252674930bbd0c4e113856a2a3a5747R118)
2015-06-22 18:25:44 -04:00
Matthew Flatt
2d4f3e2ac9 remove the "racket-pkgs" directory layer
The layer is now redundant, since everything left in "pkgs" is in the
"racket-pkgs" category.
2014-12-08 05:22:59 -07:00