ru:documentation:entrypoint
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
ru:documentation:entrypoint [2022/03/26 22:07] – created furnygo | ru:documentation:entrypoint [2022/03/27 22:36] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 41: | Line 41: | ||
==== Типы ссылок на код ==== | ==== Типы ссылок на код ==== | ||
- | Ссылка на код точки входа преобразуется в экземпляр типа прототипа точки входа. Наиболее распространенный способ создания точки входа - это ссылка на класс, который реализует ожидаемый тип, но эти ссылки на код могут быть сделаны несколькими способами. Внутренне языковой адаптер отвечает за интерпретацию ссылок и превращение их в экземпляры. Языковой адаптер по умолчанию предназначен для кода Java и, таким образом, | + | Ссылка на код точки входа преобразуется в экземпляр типа прототипа точки входа. Наиболее распространенный способ создания точки входа - это ссылка на класс, который реализует ожидаемый тип, но эти ссылки на код могут быть сделаны несколькими способами. Внутренне языковой адаптер отвечает за интерпретацию ссылок и превращение их в экземпляры. Языковой адаптер по умолчанию предназначен для кода Java и, таким образом, |
- | **Будет переведено позже** | + | |
- | ----- | + | * **Ссылка на метод**: |
- | | + | * **Ссылка на статическое поле**: |
- | * **Ссылка на метод**: | + | |
- | * **Ссылка на статическое поле**: | + | |
- | References to class members must be unambiguous, meaning the class must contain one and only one field or method with the targeted name. The language adapter cannot resolve methods overloads. In case of ambiguity, the entrypoint will fail to resolve. | + | Ссылки на члены класса должны быть однозначными, что означает, |
- | Language adapters for other languages can be implemented by mods. [[https:// | + | Языковые адаптеры для других языков могут быть реализованы модами. [[https:// |
==== Другие приложения точек входа ==== | ==== Другие приложения точек входа ==== | ||
- | Mods can call each others' | + | Моды могут вызывать точки входа друг друга в целях интеграции. Точка входа загружается лениво, когда запрашиваются точки входа для определенного прототипа точки входа, что делает точку входа отличным инструментом для дополнительной интеграции модов. Мод может стать поставщиком прототипа точки входа, объявив, |
- | Entrypoint instances can be accessed by calling | + | Доступ к экземплярам точкам входа можно получить, |
- | Entrypoint instances are memoized by their name and also their type. Using the same code reference for multiple entrypoints will result in multiple instances. Though highly absurd in practice, if '' | + | Экземпляры точек входа запоминаются по их имени, а также по их типу. Использование одной и той же ссылки на код для нескольких точек входа приведет к созданию нескольких экземпляров. Хотя на практике это крайне абсурдно, если |
==== Примечание о порядке загрузки и фазах (или их отсутствии) ==== | ==== Примечание о порядке загрузки и фазах (или их отсутствии) ==== | ||
- | Fabric Loader | + | Fabric Loader |
- | A common example is the expectation that mod A should be able to load after mod B because mod A will replace an object registered by mod B. Alternatively, mod C wants to be loaded before mod D because mod D will do something in response to a registration performed by mod C. This is cannot be done for two reasons: | + | Распространенным примером является ожидание того, что мод |
- | - Mod initializers are not required to represent a transition in a "mod loading lifecycle" | + | - Инициализаторы модов не требуются для представления перехода в "жизненном цикле загрузки модов", |
- | - The order in which mod initializers are called is undefined, and cannot be influenced so that mod A's initializers are called after mod B's initializers, | + | - Порядок, в котором вызываются инициализаторы мод, не определен, |
- | Leaving aside the missing guarantee of registration of all objects in initializers, one might argue that there should therefore be other entrypoints to perform | + | Оставляя в стороне отсутствующую гарантию регистрации всех объектов в инициализаторах, можно утверждать, |
ru/documentation/entrypoint.1648332423.txt.gz · Last modified: 2022/03/26 22:07 by furnygo