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

RFC: Eager Macro Expansion #2320

Closed
wants to merge 47 commits into from

Commits on Feb 2, 2018

  1. Add macro expansion API to proc macros

    pierzchalski authored and Edward Pierzchalski committed Feb 2, 2018
    Configuration menu
    Copy the full SHA
    9422185 View commit details
    Browse the repository at this point in the history

Commits on Feb 6, 2018

  1. Update 0000-proc-macro-expansion-api.md

    Remove 'same crate proc macro' drawback and replace it with discussion under reference explanation, since it's an issue that isn't introduced by this RFC and will also probably share a solution.
    pierzchalski authored Feb 6, 2018
    Configuration menu
    Copy the full SHA
    1e0ace1 View commit details
    Browse the repository at this point in the history

Commits on May 6, 2018

  1. Update 0000-proc-macro-expansion-api.md

    Remove anything about attribute expansion order, since that's not settled yet especially w.r.t. `#[cfg]`.
    
    Remove anything in the reference section about hygiene, since that's not a focus for the macros 1.2 stabilisation push. Add a quick discussion about being forward-compatible with future hygiene work.
    
    Expand discussion on how to keep this API forward-compatible with various issues.
    pierzchalski authored May 6, 2018
    Configuration menu
    Copy the full SHA
    4cce75d View commit details
    Browse the repository at this point in the history

Commits on Nov 15, 2018

  1. Configuration menu
    Copy the full SHA
    2d170dd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8cfa9fd View commit details
    Browse the repository at this point in the history

Commits on Nov 16, 2018

  1. Miscellaneous improvements

    - Fix up examples
    - Include a (currently badly verbose) full expansion example.
    - Clarify the input and output token formats.
    - Add some related unanswered questions.
    - Include some bikeshedding TODOs.
    pierzchalski committed Nov 16, 2018
    Configuration menu
    Copy the full SHA
    5cfbd4c View commit details
    Browse the repository at this point in the history
  2. Minor fixups

    pierzchalski committed Nov 16, 2018
    Configuration menu
    Copy the full SHA
    c7a2a54 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    eadc2ab View commit details
    Browse the repository at this point in the history
  4. Alternative library API?

    pierzchalski committed Nov 16, 2018
    Configuration menu
    Copy the full SHA
    02ed8af View commit details
    Browse the repository at this point in the history

Commits on Nov 23, 2018

  1. Simplify token-based idea.

    By focusing less on the proc_macro API, and caring more about how a
    library using it would work, we greatly simplify the usage.
    
    Moving to 'only mark a part of the call tokens' removes the need for a
    fully-fleged API: once we know how tokens and their properties work we
    can hijack that.
    pierzchalski committed Nov 23, 2018
    Configuration menu
    Copy the full SHA
    31dd83a View commit details
    Browse the repository at this point in the history
  2. fixup, rename

    New name is goal-oriented enough that I shouldn't need to change it
    again.
    pierzchalski committed Nov 23, 2018
    Configuration menu
    Copy the full SHA
    f3b3f04 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1238314 View commit details
    Browse the repository at this point in the history

Commits on Nov 24, 2018

  1. Configuration menu
    Copy the full SHA
    c910cd8 View commit details
    Browse the repository at this point in the history

Commits on Nov 27, 2018

  1. Consolidate corner-cases

    pierzchalski committed Nov 27, 2018
    Configuration menu
    Copy the full SHA
    61f5cca View commit details
    Browse the repository at this point in the history

Commits on Dec 2, 2018

  1. Configuration menu
    Copy the full SHA
    19dbab1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aa515b8 View commit details
    Browse the repository at this point in the history

Commits on Dec 3, 2018

  1. Minor fixups.

    pierzchalski authored Dec 3, 2018
    Configuration menu
    Copy the full SHA
    c02c991 View commit details
    Browse the repository at this point in the history

Commits on Jan 31, 2019

  1. Pivot to eRFC.

    Remove details on tagged tokens proposal, add brief overview of tagged
    tokens and proc macro function proposals, sneak in the macro callbacks
    proposal.
    
    Clean up line width and examples.
    pierzchalski committed Jan 31, 2019
    Configuration menu
    Copy the full SHA
    1c7cc52 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    32a48dc View commit details
    Browse the repository at this point in the history

Commits on Mar 10, 2019

  1. Configuration menu
    Copy the full SHA
    531184f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ae58736 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    77ee8c4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    eac7dce View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    6eb8ceb View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a93d5ef View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    3be06b0 View commit details
    Browse the repository at this point in the history
  8. fixups, remove "change"

    pierzchalski committed Mar 10, 2019
    Configuration menu
    Copy the full SHA
    fd130dd View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d173218 View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2019

  1. Configuration menu
    Copy the full SHA
    7ab6869 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3dd9545 View commit details
    Browse the repository at this point in the history

Commits on Apr 9, 2019

  1. Configuration menu
    Copy the full SHA
    34e958e View commit details
    Browse the repository at this point in the history

Commits on Jun 18, 2019

  1. pivot to procedural api

    pierzchalski committed Jun 18, 2019
    Configuration menu
    Copy the full SHA
    faf02d5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    27c3ab2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    eab9cfa View commit details
    Browse the repository at this point in the history

Commits on Nov 23, 2019

  1. WIP

    This is the start of a total rewrite of the RFC, other than (most of)
    the motivation section. The new version should actually follow the RFC
    template, as well as having better structure following comments from
    @pnkfelix.
    pierzchalski committed Nov 23, 2019
    Configuration menu
    Copy the full SHA
    c97e728 View commit details
    Browse the repository at this point in the history

Commits on Nov 24, 2019

  1. WIP

    Adds justifications for main design choices - making expansion
    asynchronous, accepting arbitary token input, and using the builder
    pattern.
    pierzchalski committed Nov 24, 2019
    Configuration menu
    Copy the full SHA
    5ad8707 View commit details
    Browse the repository at this point in the history

Commits on Dec 3, 2019

  1. WIP

    misc fixups, flesh out builder pattern
    pierzchalski committed Dec 3, 2019
    Configuration menu
    Copy the full SHA
    25c4f01 View commit details
    Browse the repository at this point in the history
  2. WIP

    Add attribute macro corner cases
    pierzchalski committed Dec 3, 2019
    Configuration menu
    Copy the full SHA
    a074b70 View commit details
    Browse the repository at this point in the history
  3. WIP

    update motivation to highlight the two bits that are relevant
    pierzchalski committed Dec 3, 2019
    Configuration menu
    Copy the full SHA
    22d7ed6 View commit details
    Browse the repository at this point in the history
  4. WIP

    Add section on deadloc
    pierzchalski committed Dec 3, 2019
    Configuration menu
    Copy the full SHA
    0f2fa9a View commit details
    Browse the repository at this point in the history
  5. fixup wording

    pierzchalski committed Dec 3, 2019
    Configuration menu
    Copy the full SHA
    8859cb8 View commit details
    Browse the repository at this point in the history
  6. fixup

    pierzchalski committed Dec 3, 2019
    Configuration menu
    Copy the full SHA
    95712d7 View commit details
    Browse the repository at this point in the history

Commits on Feb 15, 2020

  1. incremental progress

    pierzchalski committed Feb 15, 2020
    Configuration menu
    Copy the full SHA
    3441eed View commit details
    Browse the repository at this point in the history
  2. spelling fixups

    pierzchalski committed Feb 15, 2020
    Configuration menu
    Copy the full SHA
    04cbcc2 View commit details
    Browse the repository at this point in the history

Commits on Feb 22, 2020

  1. Configuration menu
    Copy the full SHA
    94d424c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e579070 View commit details
    Browse the repository at this point in the history

Commits on Mar 9, 2020

  1. Apply suggestions from code review

    Thanks @chris-morgan!
    
    Co-Authored-By: Chris Morgan <me@chrismorgan.info>
    pierzchalski and chris-morgan authored Mar 9, 2020
    Configuration menu
    Copy the full SHA
    c1c2488 View commit details
    Browse the repository at this point in the history