add IPreferences Interface#10830
Conversation
|
Claude says it will break multiplayer yields in this form:
|
|
reverted the YieldController for now |
|
You have already said that.
I'm asking why splitting the functionality across the abstract class and
the interface. I still don't see any reason for that, and none of your
previous answers explain that single, crucial point.
Would you be so kind as to please explain why? (Please refer to my earlier
long answer as for why I'm asking this.)
|
Because the interface can't know how the Data is stored For example, see Java HashMap public class HashMap<K,V>
extends AbstractMap<K,V>
implements Map<K,V>The interface has the methods list |
|
Thanks for the example!
It was instrumental.
I asked a bot about it, and I think that I understand now.
It's due to a technical limitation of Java.
Lately, I had been working with Rust, which does away with class
inheritance at all - so I was not aware of this.
Now I see why it makes sense.
Yeah, go ahead.
I'll approve this PR as-is.
|
|
I see that this PR is still a draft.
Ping me as son at you mark it as ready for review, and I'll approve it.
|
|
I cannot approve it myself since I don't have write access to the repo. |
Preferences Interface for #10827
@MostCromulent i'm not 100% sure if the YieldController changes work that way
or if i need to change the PlayerControllerHuman to IGameController
because
NetGameControllercallsnew YieldController(null);but there are still some methods unimplemented for IGameController
(i can split up the YieldController changes into a different PR)