1
0
mirror of https://github.com/kataras/iris.git synced 2025-12-23 12:57:05 +00:00
Former-commit-id: d79204bb6ff8e495378637481e022b014d7f7bed
This commit is contained in:
Gerasimos (Makis) Maropoulos
2017-10-10 05:25:09 +03:00
parent 7ab607aab2
commit 713e5c3362
2 changed files with 8 additions and 5 deletions

View File

@@ -71,11 +71,12 @@ func (b *binder) lookup(elem reflect.Type) (fields []field.Field) {
matcher := func(elemField reflect.StructField) bool {
// If the controller's field is interface then check
// if the given binded value implements that interface.
// i.e MovieController { Service services.MoviesController /* interface */ }
// i.e MovieController { Service services.MovieService /* interface */ }
// app.Controller("/", new(MovieController),
// services.NewMovieMemoryService(...))
// services.NewMovieMemoryService returns a *MovieMemoryService
// that implements the MovieService interface.
//
// `services.NewMovieMemoryService` returns a `*MovieMemoryService`
// that implements the `MovieService` interface.
if elemField.Type.Kind() == reflect.Interface {
return value.Type().Implements(elemField.Type)
}