72 lines
2.6 KiB
C++
72 lines
2.6 KiB
C++
#pragma once
|
|
|
|
#include "ccl/Operation.hpp"
|
|
#include "ccl/oss/Pict.hpp"
|
|
|
|
//! Text descriptions of ccl entities for user
|
|
namespace xtr::info {
|
|
|
|
enum class ErrorType : uint32_t {
|
|
UNKNOWN,
|
|
LEXER,
|
|
PARSER,
|
|
SEMANTIC,
|
|
VALUE,
|
|
};
|
|
|
|
enum class CoreStatus : uint8_t {
|
|
CORRECT,
|
|
WARNING,
|
|
INCORRECT
|
|
};
|
|
|
|
enum class ModelStatus : uint8_t {
|
|
CORRECT,
|
|
WARNING,
|
|
INCORRECT
|
|
};
|
|
|
|
[[nodiscard]] CoreStatus StatusOf(const ccl::semantic::RSCore& core);
|
|
[[nodiscard]] ModelStatus StatusOf(const ccl::semantic::RSModel& target);
|
|
|
|
[[nodiscard]] CString ValueStatus(EntityUID target, const ccl::semantic::RSModel& model);
|
|
|
|
[[nodiscard]] CString LabelBool(bool flag);
|
|
[[nodiscard]] CString Label(ccl::ops::Type type);
|
|
[[nodiscard]] CString Label(ccl::ops::Status status);
|
|
[[nodiscard]] CString Label(CoreStatus status);
|
|
[[nodiscard]] CString Label(ModelStatus status);
|
|
[[nodiscard]] CString Label(ccl::src::SrcType type);
|
|
[[nodiscard]] CString Label(ccl::lang::Grammem gram);
|
|
[[nodiscard]] CString Label(const ccl::rslang::ExpressionType* type);
|
|
[[nodiscard]] CString Label(ccl::rslang::ValueClass cls);
|
|
|
|
[[nodiscard]] CString DrawableLabel(ccl::ops::Status status);
|
|
|
|
[[nodiscard]] CString IndicatorFor(const ccl::semantic::RSCore& core);
|
|
[[nodiscard]] CString BasicDescriptionOf(const ccl::semantic::RSCore& core);
|
|
[[nodiscard]] CString DescriptionOf(const ccl::semantic::RSCore& core);
|
|
[[nodiscard]] CString DescriptionOf(ccl::lang::Grammem gram);
|
|
|
|
[[nodiscard]] CString IndicatorFor(const ccl::semantic::RSModel& model);
|
|
[[nodiscard]] CString BasicDescriptionOf(const ccl::semantic::RSModel& model);
|
|
[[nodiscard]] CString DescriptionOf(const ccl::semantic::RSModel& model);
|
|
|
|
[[nodiscard]] CString BasicDescriptionOf(ccl::oss::PictID pict, ccl::oss::OSSchema& oss);
|
|
|
|
[[nodiscard]] CString DescriptionOf(const ccl::rslang::Auditor& analytics, BOOL showAST);
|
|
[[nodiscard]] CString DescriptionOf(const ccl::rslang::Interpreter& calculator,
|
|
const std::optional<ccl::rslang::ExpressionValue>& result,
|
|
BOOL showAST);
|
|
[[nodiscard]] CString DescriptionOf(const ccl::lang::Reference& ref);
|
|
[[nodiscard]] CString DescriptionOf(ccl::oss::ossOperationsFacet& ops, ccl::oss::PictID pid);
|
|
[[nodiscard]] CString DescriptionOf(const ccl::StrSubstitutes& substitutes);
|
|
|
|
[[nodiscard]] CString DescriptionOf(const ccl::rslang::ErrorLogger& log);
|
|
[[nodiscard]] CString DescriptionOf(const ccl::rslang::Error& error);
|
|
[[nodiscard]] CString Label(ErrorType type);
|
|
|
|
[[nodiscard]] CString GenerateLoopStr(const ccl::semantic::RSCore& schema, const std::vector<ccl::SetOfEntities>& loops);
|
|
|
|
}// namespace xtr::info
|