luau/Common/include/Luau/ExperimentalFlags.h

30 lines
1.1 KiB
C
Raw Normal View History

2022-07-22 04:36:41 +08:00
// This file is part of the Luau programming language and is licensed under MIT License; see LICENSE.txt for details
#pragma once
#include <string.h>
namespace Luau
{
inline bool isFlagExperimental(const char* flag)
{
// Flags in this list are disabled by default in various command-line tools. They may have behavior that is not fully final,
// or critical bugs that are found after the code has been submitted.
2023-02-17 22:53:37 +08:00
static const char* const kList[] = {
2023-03-17 22:59:30 +08:00
"LuauInstantiateInSubtyping", // requires some fixes to lua-apps code
"LuauTinyControlFlowAnalysis", // waiting for updates to packages depended by internal builtin plugins
2023-09-16 00:27:45 +08:00
"LuauFixIndexerSubtypingOrdering", // requires some small fixes to lua-apps code since this fixes a false negative
2023-12-16 04:52:08 +08:00
"LuauUpdatedRequireByStringSemantics", // requires some small fixes to fully implement some proposed changes
2022-09-02 07:00:14 +08:00
// makes sure we always have at least one entry
nullptr,
2022-07-22 04:36:41 +08:00
};
2022-08-05 05:27:28 +08:00
for (const char* item : kList)
2022-07-22 04:36:41 +08:00
if (item && strcmp(item, flag) == 0)
return true;
return false;
}
2022-08-05 05:27:28 +08:00
} // namespace Luau