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

Non-wildcard existentials #94

Closed
xeno-by opened this issue Jul 7, 2018 · 1 comment
Closed

Non-wildcard existentials #94

xeno-by opened this issue Jul 7, 2018 · 1 comment
Assignees
Labels
Milestone

Comments

@xeno-by
Copy link
Contributor

xeno-by commented Jul 7, 2018

class C {
  type X = List[T] forSome { type T }
}
different nsc (-) vs rsc (+): _empty_/C#X#
 signature {
   typeSignature {
     type_parameters {
     }
     lower_bound {
-      existentialType {
-        tpe {
-          typeRef {
-            prefix {
-            }
-            symbol: "scala/package.List#"
-            type_arguments {
-              typeRef {
-                prefix {
-                }
-                symbol: "localNNN"
-              }
-            }
-          }
-        }
-        declarations {
-          hardlinks {
-            symbol: "localNNN"
-            kind: TYPE
-            properties: 4
-            name: "T"
-            accessibility {
-              tag: PUBLIC
-              symbol: ""
-            }
-            language: SCALA
-            signature {
-              typeSignature {
-                type_parameters {
-                }
-                lower_bound {
-                  typeRef {
-                    prefix {
-                    }
-                    symbol: "scala/Nothing#"
-                  }
-                }
-                upper_bound {
-                  typeRef {
-                    prefix {
-                    }
-                    symbol: "scala/Any#"
-                  }
-                }
-              }
-            }
-          }
-        }
-      }
     }
     upper_bound {
-      existentialType {
-        tpe {
-          typeRef {
-            prefix {
-            }
-            symbol: "scala/package.List#"
-            type_arguments {
-              typeRef {
-                prefix {
-                }
-                symbol: "localNNN"
-              }
-            }
-          }
-        }
-        declarations {
-          hardlinks {
-            symbol: "localNNN"
-            kind: TYPE
-            properties: 4
-            name: "T"
-            accessibility {
-              tag: PUBLIC
-              symbol: ""
-            }
-            language: SCALA
-            signature {
-              typeSignature {
-                type_parameters {
-                }
-                lower_bound {
-                  typeRef {
-                    prefix {
-                    }
-                    symbol: "scala/Nothing#"
-                  }
-                }
-                upper_bound {
-                  typeRef {
-                    prefix {
-                    }
-                    symbol: "scala/Any#"
-                  }
-                }
-              }
-            }
-          }
-        }
-      }
     }
   }
 }
@xeno-by xeno-by added this to the M4 milestone Sep 17, 2018
xeno-by added a commit to xeno-by/rsc that referenced this issue Sep 25, 2018
@xeno-by
Copy link
Contributor Author

xeno-by commented Sep 25, 2018

xeno-by@0ac8293 adds support for outlining non-wildcard existentials. Supporting these types in mjar is left for future work.

@xeno-by xeno-by self-assigned this Sep 25, 2018
xeno-by added a commit to xeno-by/rsc that referenced this issue Sep 26, 2018
@xeno-by xeno-by closed this as completed Sep 26, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

1 participant