polserver/pol-core/bscript/compilercfg.h
turleypol 2320a5dd35
Socket::has_incoming_data closes socket on error (#721)
* Socket::has_incomming_data closes socket on error
eg auxclient via OpenConnection had the problem that a closed connection
by the other side wasnt detected.
cleanup timeout params uses now milliseconds
removed old unused pollingwithselect
renamed pol.cfg entry for SingleThreadLoginServer socket timeout

* changed the default for the loginserver to single thread
Formatter defaults when no cfg can be loaded match the cfg case now.
added docs
2024-10-17 06:55:06 +02:00

78 lines
2.1 KiB
C++

/** @file
*
* @par History
*/
#ifndef BSCRIPT_COMPILERCFG_H
#define BSCRIPT_COMPILERCFG_H
#include <string>
#include <vector>
namespace Pol
{
namespace Bscript
{
struct CompilerConfig
{
std::vector<std::string> PackageRoot;
std::string IncludeDirectory;
std::string ModuleDirectory;
std::string PolScriptRoot;
bool GenerateListing;
bool GenerateDebugInfo;
bool GenerateDebugTextInfo;
int VerbosityLevel;
bool DisplayWarnings;
bool DisplayDebugs;
bool GenerateDependencyInfo;
bool CompileAspPages;
bool AutoCompileByDefault;
bool UpdateOnlyOnAutoCompile;
bool OnlyCompileUpdatedScripts;
bool WatchModeByDefault;
bool DisplaySummary;
bool DisplayUpToDateScripts;
bool OptimizeObjectMembers;
bool ErrorOnWarning;
bool ThreadedCompilation;
int NumberOfThreads;
bool ParanoiaWarnings;
bool ErrorOnFileCaseMissmatch;
int EmParseTreeCacheSize;
int IncParseTreeCacheSize;
// Formatter
size_t FormatterLineWidth = 100;
bool FormatterKeepKeywords = false;
unsigned short FormatterIndentLevel = 2;
bool FormatterMergeEmptyLines = true;
bool FormatterEmptyParenthesisSpacing = false;
bool FormatterEmptyBracketSpacing = false;
bool FormatterConditionalParenthesisSpacing = true;
bool FormatterParenthesisSpacing = true;
bool FormatterBracketSpacing = true;
bool FormatterDelimiterSpacing = true;
bool FormatterAssignmentSpacing = true;
bool FormatterComparisonSpacing = true;
bool FormatterOperatorSpacing = true;
bool FormatterWindowsLineEndings = false;
bool FormatterUseTabs = false;
unsigned short FormatterTabWidth = 4;
bool FormatterInsertNewlineAtEOF = true;
bool FormatterFormatInsideComments = true;
bool FormatterBracketAttachToType = true;
bool FormatterAlignTrailingComments = true;
bool FormatterAlignConsecutiveShortCaseStatements = true;
bool FormatterAllowShortCaseLabelsOnASingleLine = true;
bool FormatterAllowShortFuncRefsOnASingleLine = true;
void Read( const std::string& path );
void SetDefaults();
};
extern CompilerConfig compilercfg;
} // namespace Bscript
} // namespace Pol
#endif