public static void CheckLifetimes(this EntitySyntax declaration)
        {
            declaration.Match()
            .With <ClassSyntax>(@class =>
            {
                throw new NotImplementedException();
            })
            .With <FunctionSyntax>(function =>
            {
                foreach (var parameter in function.Parameters)
                {
                    //TODO parameter.Type.DefaultOwnership(Ownership.BorrowImmutable);
                }

                foreach (var statement in function.Body)
                {
                    // TODO
                }
            })
            .With <GlobalVariableSyntax>(global =>
            {
                throw new NotImplementedException();
            })
            .Exhaustive();
        }
 public override void VisitEntitySyntax(EntitySyntax entity)
 {
     _OnTypeSyntax(entity);
     base.VisitEntitySyntax(entity);
 }
 public virtual void VisitEntitySyntax(EntitySyntax entity)
 {
     Visit(entity.Events);
 }
示例#4
0
 protected Entity(EntitySyntax syntax, Namespace containingNamespace, Accessibility declaredAccessibility, string name)
     : base(syntax, containingNamespace.ContainingPackage, containingNamespace, declaredAccessibility, name)
 {
     Requires.NotNull(containingNamespace, nameof(containingNamespace));
 }