nixd
|
Namespaces | |
namespace | detail |
namespace | tok |
Classes | |
class | Attribute |
class | AttrName |
class | AttrPath |
class | Binding |
class | Binds |
class | Definition |
Represents a definition. More... | |
class | Diagnostic |
class | Dot |
Holds a "." in the language. More... | |
class | EnvNode |
A set of variable definitions, which may inherit parent environment. More... | |
class | Expr |
class | ExprAssert |
class | ExprAttrs |
class | ExprBinOp |
class | ExprCall |
A call/apply to some function. More... | |
class | ExprFloat |
class | ExprIf |
class | ExprInt |
class | ExprLambda |
class | ExprLet |
class | ExprList |
class | ExprOp |
Abstract class for binary operators and unary operators. More... | |
class | ExprOpHasAttr |
class | ExprParen |
class | ExprPath |
class | ExprSelect |
class | ExprSPath |
class | ExprString |
class | ExprUnaryOp |
class | ExprVar |
class | ExprWith |
class | Fix |
class | Formal |
class | Formals |
Lambda formal arguments. More... | |
class | Identifier |
Identifier. Variable names, attribute names, etc. More... | |
class | Inherit |
class | InterpolablePart |
class | InterpolatedParts |
class | Interpolation |
${expr} construct More... | |
class | LambdaArg |
class | Lexer |
class | LexerCursor |
A point in the source file. More... | |
class | LexerCursorRange |
class | Misc |
Misc node, used for parentheses, keywords, etc. More... | |
class | Node |
class | Note |
class | Op |
class | ParentMapAnalysis |
class | Parser |
class | PartialDiagnostic |
class | Position |
class | PositionRange |
class | Sema |
class | SemaAttrs |
Attribute set after deduplication. More... | |
class | TextEdit |
class | Token |
A token. With it's kind, and the range in source code. More... | |
class | VariableLookupAnalysis |
Typedefs | |
using | NixInt = int64_t |
using | NixFloat = double |
Enumerations | |
enum class | DiagnosticTag { Faded , Striked } |
Functions | |
void | to_json (nlohmann::json &R, const LexerCursor &LC) |
void | to_json (nlohmann::json &R, const LexerCursorRange &LCR) |
void | to_json (nlohmann::json &R, const PartialDiagnostic &D) |
void | to_json (nlohmann::json &R, const Diagnostic &D) |
void | to_json (nlohmann::json &R, const Note &N) |
void | to_json (nlohmann::json &R, const TextEdit &D) |
void | to_json (nlohmann::json &R, const Fix &F) |
std::shared_ptr< Node > | parse (std::string_view Src, std::vector< Diagnostic > &Diags) |
Parse a string. | |
Diagnostic.h, diagnostic types and definitions
Diagnostics are structures with a main message, and optionally some additional information (body).
For diagnostics with a body, they may need a special overrided function to format the message.
using nixf::NixFloat = double |
using nixf::NixInt = int64_t |
|
strong |
Enumerator | |
---|---|
Faded | |
Striked |
Definition at line 74 of file Diagnostic.h.
std::shared_ptr< Node > nixf::parse | ( | std::string_view | Src, |
std::vector< Diagnostic > & | Diags ) |
Parse a string.
Src | The string to parse. |
Diags | Diagnostics will be appended to this vector. |
Definition at line 37 of file ParseSupport.cpp.
References nixf::Parser::parse().
Referenced by main().
void nixf::to_json | ( | nlohmann::json & | R, |
const Diagnostic & | D ) |
void nixf::to_json | ( | nlohmann::json & | R, |
const Fix & | F ) |
void nixf::to_json | ( | nlohmann::json & | R, |
const LexerCursor & | LC ) |
Referenced by main().
void nixf::to_json | ( | nlohmann::json & | R, |
const LexerCursorRange & | LCR ) |
void nixf::to_json | ( | nlohmann::json & | R, |
const Note & | N ) |
void nixf::to_json | ( | nlohmann::json & | R, |
const PartialDiagnostic & | D ) |
void nixf::to_json | ( | nlohmann::json & | R, |
const TextEdit & | D ) |