Conversation
|
Thanks for your pull request, @WalterBright! Bugzilla referencesYour PR doesn't reference any Bugzilla issue. If your PR contains non-trivial changes, please reference a Bugzilla issue or create a manual changelog. |
a491ab9 to
eb8dec5
Compare
|
I recommend putting the PR description in the commit message. Next time, if you have only one commit, GitHub will use the commit message as the PR title and description. Just separate the title and description with an empty newline. |
|
I thought @andralex wanted to go the other way and define an See: #1439 (comment) (the PR itself was a solution to this problem too) |
|
It's nice to have multiple ideas put forth to solving it. I have been thinking about this for a while, and decided to just put it out there to push some progress. |
|
Couple of questions regarding this: |
|
@WalterBright and I discussed and agreed we'll pursue the |
|
Actually what we're going to do is write a DIP and see if we can't think of all the angles. |
Since
Objecthas resisted all attempts to add attributes, I created a derived classSafeObjectthat adds in all the attributes. By deriving fromSafeObjectinstead ofObject, one can create objects that are pure, nothrow, const, etc.Note that derived classes will not be able to remove the pure, nothrow, @nogc, etc. attributes. For classes that cannot abide by this, they can still derive from
Object.Having
SafeObjectenables Phobos code to have separate overloads forSafeObject, so that they can operate safely.