Scan directory to find source code in multiple files in the same package (#30)
This commit is contained in:
parent
0a1d5c8545
commit
737c1a4044
15 changed files with 444 additions and 177 deletions
internal/spec
|
@ -24,7 +24,7 @@ func (r FieldReference) ReferencingCode() string {
|
|||
}
|
||||
|
||||
type fieldResolver struct {
|
||||
Structs code.Structs
|
||||
Structs map[string]code.Struct
|
||||
}
|
||||
|
||||
func (r fieldResolver) ResolveStructField(structModel code.Struct, tokens []string) (FieldReference, bool) {
|
||||
|
@ -46,7 +46,7 @@ func (r fieldResolver) ResolveStructField(structModel code.Struct, tokens []stri
|
|||
continue
|
||||
}
|
||||
|
||||
childStruct, ok := r.Structs.ByName(fieldSimpleType.Code())
|
||||
childStruct, ok := r.Structs[fieldSimpleType.Code()]
|
||||
if !ok {
|
||||
continue
|
||||
}
|
||||
|
|
|
@ -6,7 +6,7 @@ import (
|
|||
)
|
||||
|
||||
// ParseInterfaceMethod returns repository method spec from declared interface method
|
||||
func ParseInterfaceMethod(structs code.Structs, structModel code.Struct, method code.Method) (MethodSpec, error) {
|
||||
func ParseInterfaceMethod(structs map[string]code.Struct, structModel code.Struct, method code.Method) (MethodSpec, error) {
|
||||
parser := interfaceMethodParser{
|
||||
fieldResolver: fieldResolver{
|
||||
Structs: structs,
|
||||
|
|
|
@ -91,9 +91,9 @@ var (
|
|||
}
|
||||
)
|
||||
|
||||
var structs = code.Structs{
|
||||
nameStruct,
|
||||
structModel,
|
||||
var structs = map[string]code.Struct{
|
||||
nameStruct.Name: nameStruct,
|
||||
structModel.Name: structModel,
|
||||
}
|
||||
|
||||
type ParseInterfaceMethodTestCase struct {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue