Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expand docs on Macros By Example. #511

Merged
merged 4 commits into from
Mar 14, 2019
Merged

Commits on Mar 11, 2019

  1. Expand docs on Macros By Example.

    The primary motivation here was to increase clarity and fully address the
    scoping and naming details. The inclusion of RFC 550's formal specification is
    to move it to the reference where it can be updated. I made several changes,
    motivated by accommodating `?` and new fragment specifiers, but there are some
    other things which need highlighting so that they can be double-checked for
    correctness.
    
      * Permit the empty string to follow on in the first invariant; this is a
        technical oversight in the definition I believe.
      * Added a requirement that repetitions obey the follow rules; this was an
        oversight in the original RFC and currently planned for fix.
      * Rewrote the definition of FIRST for complex NTs to be more clear.
      * Added a case to LAST for `?` repetitions
      * Removed the last example of LAST, because it is wrong.
      * Rearranged the definition of FOLLOW to be more clear
      * Added Shl to FOLLOW(ty) and FOLLOW(path), as documented in the Reference
        already.
      * Added missing follow sets for newer fragment specifiers.
    
    The scoping text is probably not completely accurate, but it's certainly much
    better than what was there before (i.e. basically nothing).
    Alexis Hunt authored and ehuss committed Mar 11, 2019
    Configuration menu
    Copy the full SHA
    884c429 View commit details
    Browse the repository at this point in the history
  2. Update for review comments and minor additions.

    - Address review comments.
    - Minor typo and formatting fixes.
    - Link `macro_use` and `macro_export` to their new home.
    ehuss committed Mar 11, 2019
    Configuration menu
    Copy the full SHA
    fc68e62 View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2019

  1. Fix copy/paste mistake.

    ehuss committed Mar 12, 2019
    Configuration menu
    Copy the full SHA
    327d035 View commit details
    Browse the repository at this point in the history
  2. Fix wrong word.

    ehuss committed Mar 12, 2019
    Configuration menu
    Copy the full SHA
    f628b29 View commit details
    Browse the repository at this point in the history