Annotate struct definitions with a recursive flag.

This commit is contained in:
Daniel Kirchner
2020-04-16 16:42:12 +02:00
parent 95349b3634
commit df1809f8da
13 changed files with 210 additions and 133 deletions
+6
View File
@@ -128,6 +128,12 @@ struct TypeDeclarationAnnotation: DeclarationAnnotation
std::string canonicalName;
};
struct StructDeclarationAnnotation: TypeDeclarationAnnotation
{
/// Whether the struct is recursive. Will be filled in by the DeclarationTypeChecker.
std::optional<bool> recursive;
};
struct ContractDefinitionAnnotation: TypeDeclarationAnnotation, StructurallyDocumentedAnnotation
{
/// List of functions without a body. Can also contain functions from base classes.