code: func (pp *primitiveParser) loadStructs() {
  	pp.structmap = make(map[string]*ast.StructType)
  
  	for k, o := range pp.p.Scope.Objects {
  		// We only care about types
  		if o.Kind != ast.Typ {
  			continue
  		}
  		ts, ok := o.Decl.(*ast.TypeSpec)
  		if !ok {
  			continue
  		}
  
  		// and to be more exact, only struct types
  		s, ok := ts.Type.(*ast.StructType)
  		if !ok {
  			continue
  		}
  
  		// Empty struct? We don't need to generate and json for it. skip.
  		if len(s.Fields.List) == 0 {
  			continue
  		}
  
  		pp.structmap[k] = s
  	}
  }
docs: // loadStructs creates a map of name to ast node for struct types from the
  // parsed file, filtering out other types.