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

Goal builder #361

Merged
merged 15 commits into from
Apr 1, 2020
Merged

Goal builder #361

merged 15 commits into from
Apr 1, 2020

Commits on Mar 28, 2020

  1. introduce GoalBuilder and convert struct WF goals

    The goal here is to make this code more readable and less ad-hoc.
    nikomatsakis committed Mar 28, 2020
    Configuration menu
    Copy the full SHA
    1649c5c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    671e1e4 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    413e582 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    acad3a4 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    10013b1 View commit details
    Browse the repository at this point in the history

Commits on Mar 30, 2020

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

Commits on Mar 31, 2020

  1. make associated type value goals standalone

    For a GAT like
    
    ```
    impl<T> Foo<T> { type Bar<'a> = ..}
    ```
    
    Instead of constructing nested quantifiers like
    
    ```
    forall<T> {
      if (..) {
        stuff &&
        forall<'a> { more_stuff }
      }
    }
    ```
    
    we will now build separate goals
    
    ```
    forall<T> { if (...) { stuff } } &&
    forall<T, 'a> { if (...) { more_stuff } }
    ```
    
    This both removes the need for the 'partial' forall methods in
    GoalBuilder butalso means we would be able to give better error
    messages in rustc at somepoint, since we can test "is this impl header
    WF" separately from "is this associated type value WF" etc.
    nikomatsakis committed Mar 31, 2020
    Configuration menu
    Copy the full SHA
    f319d6d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ab25299 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4acecc2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d208e4e View commit details
    Browse the repository at this point in the history

Commits on Apr 1, 2020

  1. Configuration menu
    Copy the full SHA
    b5040c2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    271b4d6 View commit details
    Browse the repository at this point in the history
  3. remove allow-dead-code

    nikomatsakis committed Apr 1, 2020
    Configuration menu
    Copy the full SHA
    fc4e623 View commit details
    Browse the repository at this point in the history
  4. make quantified private

    nikomatsakis committed Apr 1, 2020
    Configuration menu
    Copy the full SHA
    7a6491b View commit details
    Browse the repository at this point in the history
  5. make goal builder pub

    nikomatsakis committed Apr 1, 2020
    Configuration menu
    Copy the full SHA
    32f4dc8 View commit details
    Browse the repository at this point in the history