Como se señaló en los comentarios de @benjamin-gruenbaum, esto se llama trampa booleana:
Digamos que tengo una función como esta
UpdateRow(var item, bool externalCall);
y en mi controlador, ese valor para externalCall
siempre será VERDADERO. ¿Cuál es la mejor manera de llamar a esta función? Yo suelo escribir
UpdateRow(item, true);
Pero me pregunto, ¿debería declarar un booleano, solo para indicar qué significa ese valor 'verdadero'? Puedes saberlo mirando la declaración de la función, pero obviamente es más rápido y claro si acabas de ver algo como
bool externalCall = true;
UpdateRow(item, externalCall);
PD: No estoy seguro de si esta pregunta realmente encaja aquí, si no es así, ¿dónde podría obtener más información sobre esto?
PD2: No etiqueté ningún idioma porque pensé que era un problema muy genérico. De todos modos, trabajo con c # y la respuesta aceptada funciona para c #
data CallType = ExternalCall | InternalCall
en haskell por ejemplo.