🐁 Arutrancetro
в шарпе, например можно реализовать метод, который будет доступен только при приведении к интерфейсу
Αλεχ
ну или если нравится where impl<T> Clone for MyType<T> where T : Clone
🐁 Arutrancetro
public void IMyInterface.Method() {}
🐁 Arutrancetro
вот так =)
Αλεχ
я в курсе
Αλεχ
слушай
Αλεχ
это джуновые вопросы
Cat
я в курсе
это он мне
Αλεχ
ок
Cat
или нет
Cat
хз короче, я тоже запутался
🐁 Arutrancetro
я про сравнение с растом
🐁 Arutrancetro
))))
Αλεχ
public void IMyInterface.Method() {}
и используется опять же для костылей
🐁 Arutrancetro
так можно подобное?
Αλεχ
типа Array : IList
🐁 Arutrancetro
а дак в расте вообще ооп же нету вроде
Cat
точнее, в расте нет наследования
Αλεχ
в любом случае
Αλεχ
так можно подобное?
это я про костыли в шарпике
Αλεχ
в расте с этим пока все лучше
Αλεχ
public void IMyInterface.Method() {}
trait Foo { fn foo() -> i32; } struct Bar; impl Bar { fn foo() -> i32 { 20 } } impl Foo for Bar { fn foo() -> i32 { 10 } } fn main() { assert_eq!(10, <Bar as Foo>::foo()); assert_eq!(20, Bar::foo()); }
Αλεχ
кстати видишь в чем тут фишка
🐁 Arutrancetro
хз, очень не привычно
Αλεχ
хз, очень не привычно
абсолютно нормально
Αλεχ
я хз
Αλεχ
может ты кроме шарпа ни на чем не писал)
🐁 Arutrancetro
писал)
Αλεχ
я просто успел попробовать еще в универе паскаль/дельфи/руби/прлог/лисп/еще чета
Αλεχ
и ваще пофиг на чем писать
Αλεχ
ну так вот
Αλεχ
пробовал и хаскель, но дальше первых пары глав не пошел
Αλεχ
писал)
короче вот
Cat
(я тоже, если честно)
Αλεχ
трейты в расте можно еще и на статические методы вешать
Αλεχ
например можно сделать трейт
🐁 Arutrancetro
Java, Ruby, JavaScript, PHP, немного Python, немного Kotlin, чуть-чуть Scala, начинал вообще с Delphi =)
Αλεχ
trait IHaveName { const NAME: String }
🐁 Arutrancetro
а вообще по чуть-чуть на всем писал
Αλεχ
я столько раз
Αλεχ
жалел
🐁 Arutrancetro
что прыгал по языкам?
Αλεχ
что в шарпе нельзя сделать interface IParseable<T>{ public static T Parse(string input) }
🐁 Arutrancetro
:D
Αλεχ
что значит "прыгал"?
🐁 Arutrancetro
ну т.е. туда сюда =)
🐁 Arutrancetro
на том писал, на это писал
Αλεχ
я никуда не прыгал
Αλεχ
потому что в шарпе интерфейс ограничивает только инстанс
Αλεχ
а не сам тип
Cat
мм, понятн
🐁 Arutrancetro
в шарпе вообще паблик статик юзать запрещено)
🐁 Arutrancetro
это не ООП уже
Αλεχ
а как ты пишешь асинхронные конструкторы?
🐁 Arutrancetro
потому что тестировать трудно становится
Αλεχ
эмм
Αλεχ
еще раз
Αλεχ
как ты сделаешь
Αλεχ
асинхронный конструктор?
🐁 Arutrancetro
ну это исключение наверное
🐁 Arutrancetro
я про то
🐁 Arutrancetro
что нельзя связывать программу с помощью глобальных методов
🐁 Arutrancetro
типа классов с утилитами
Cat
глобальные методы это же типчные свободные функции
🐁 Arutrancetro
и юзать утилиты в каждом классе
Αλεχ
публичные статические методы
Αλεχ
айайай
Αλεχ
тут подробно
Αλεχ
количество либ под раст нео тносится к расту? хмм
Αλεχ
а, я понял
Αλεχ
ваще все снесли
պլհկ
завязывайте с шарпами и прочими бэйсиками, пожалуйста
Αλεχ
короче иди в https://gitter.im/ruRust/offtopic, там ничего не удаляют