github / github/codeql

Writing a query to find declarations of nested structs in Golang.

Ouverte
#17,134 5 commentaires 1 réaction 0 personnes assignées Voir sur GitHub
question
Langage dominant
CodeQL
Étoiles
10.1k
Forks
2.1k
Merge moyen
2 j 15 h
PR mergées (30 j)
141

Description

**Description of the issue**

I want to write a query to find the nested structs in an struct in Golang.
Let's say my struct is something like:
```
type SomeStruct struct {
field1 int
field2 dto.NewStruct
field3 []*statusCode
field4 map[string]http.Response
field5 map[category.Category]map[time.Time]*http.Header
field6 []statusCode
field7 []*time.Time
field8 http.Request
field9 statusCode
}
```
and I want to write a query that gives me all the nested types in this struct ie. `statusCode,Response,Category,Time,Header,NewStruct` etc.
The field types can be more complex than what is mentioned here.
My main problem statement is to find the declarations of these nested structs, which I will continue my query by finding all `typedecl` with their `idents` matching with the above mentioned `idents` while matching the import path and the filepath for nested objects from different packages like `dto.NewStruct`. If there is some better approach please suggest.
Please suggest me an approach.

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.