mirror of
https://github.com/ent/ent.git
synced 2026-04-28 05:30:56 +03:00
39 lines
922 B
Cheetah
39 lines
922 B
Cheetah
{{/*
|
|
Copyright 2019-present Facebook Inc. All rights reserved.
|
|
This source code is licensed under the Apache 2.0 license found
|
|
in the LICENSE file in the root directory of this source tree.
|
|
*/}}
|
|
|
|
{{/* gotype: entgo.io/ent/entc/gen.Graph */}}
|
|
|
|
{{ define "predicate" }}
|
|
|
|
{{- with extend $ "Package" "predicate" -}}
|
|
{{ template "header" . }}
|
|
{{ end }}
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"entgo.io/ent/dialect/gremlin/graph/dsl"
|
|
"entgo.io/ent/dialect/sql"
|
|
)
|
|
|
|
{{ range $n := $.Nodes -}}
|
|
// {{ $n.Name }} is the predicate function for {{ $n.Package }} builders.
|
|
type {{ $n.Name }} func({{ $.Storage.Builder }})
|
|
|
|
{{- with $n.HasValueScanner }}
|
|
// {{ $n.Name }}OrErr calls the predicate only if the error is not nit.
|
|
func {{ $n.Name }}OrErr(p {{ $n.Name }}, err error) {{ $n.Name }} {
|
|
return func(s {{ $.Storage.Builder }}) {
|
|
if err != nil {
|
|
s.AddError(err)
|
|
return
|
|
}
|
|
p(s)
|
|
}
|
|
}
|
|
{{- end }}
|
|
{{ end }}
|
|
{{ end }} |