```class Product implements Namespace { related: { parents: Team[] } permits = { view...
a
Copy code
class Product implements Namespace {
  related: {
    parents: Team[]
  }

  permits = {
    view: (ctx: Context): boolean =>
      this.permits.edit(ctx) ||
      this.related.parents.traverse((p) => p.related.guests.includes(ctx.subject)),

    edit: (ctx: Context): boolean =>
      this.permits.delete(ctx) ||
      this.related.parents.traverse((p) => p.related.members.includes(ctx.subject) || p.related.managers.includes(ctx.subject)),

    delete: (ctx: Context): boolean =>
      this.related.parents.traverse((p) => p.related.owners.includes(ctx.subject)) ||
      this.related.parents.traverse((p) => p.related.operators.includes(ctx.subject))
  }
}
The synthax is not accepted for the permits.edit ... I'm forced to do a duplicate traverse. Do you think this will change in the future ? It's a bug or missing feature in the Permission Language ? Thanks
s
as it is equivalent I don't see a reason to not support it, we just internally have to convert one into the other