New Private field method access issue [Workaround]
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 30/100
Línea de trabajo
Comienza con el NewFieldsRewriter y reproduce el caso reportado de acceso a un campo privado en el flujo de trabajo de recarga en caliente de Unity. Compara el acceso directo a _instanceNewField con la alternativa de usar una variable local y, después, verifica que usos como Gizmos.DrawWireSphere(_lastCamState.FinalPosition, BodyRadius) se reescriban de forma coherente sin requerir una limpieza de la sintaxis.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Current Workaround
So it seems this is the workaround for now. Any direct access the new field breaks the rewritter.
_instanceNewField.DoesWhatYouWant(); //<- fails to rewrite
var myLocalNewField = _instanceNewField; // <- this gets correctly rewritten
myLocalNewField.DoesWhatYouWant(); //<- All good
Then on your next recompilation round you can clean up the syntax.
Issue
I'm not sure if it's a regression and what would be its reason, but most of the time nowadays adding private fields fails as they are not rewritten correctly in every places. Example bellow.
Added
private CameraState _lastCamState;
One of the correctly rewritten part I believe
FastScriptReload.Scripts.Runtime.TemporaryNewFieldValues.ResolvePatchedObject<Indus.Client.Cameras.CinemachineBodyCollider__Patched_>(this)._lastCamState = state;
Some other places not rewritten
Gizmos.DrawWireSphere(_lastCamState.FinalPosition, BodyRadius);
It is the NewFieldsRewriter job to perform the rewrite now not sure why it skip some cases.
- Lenguaje dominante
- C#
- Estrellas
- 2.2k
- Forks
- 167
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Aún no hemos revisado los archivos de configuración de este proyecto. Empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de handzlikchris/FastScriptReload
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
handzlikchris/FastScriptReload#202 · 2 reacciones ·
-
csc.rsp supportAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
Failed to find entry-pointsAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
handzlikchris/FastScriptReload#203 · 4 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
handzlikchris/FastScriptReload#197 · 1 comentario ·
Todos los issues de handzlikchris/FastScriptReload
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
NethermindEth/nethermind#14012 ·
Los mantenedores suelen responder en 1 día
-
dependencies Status: Triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
json-schema-org/website#2518 ·
Los mantenedores suelen responder en 1 día
-
agentic-workflows
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
builtbybel/Flyoobe#498 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
builtbybel/CrapFixer#112 ·