code: func (parser *Parser) ParseGeneralApiInfo(mainApiFile string) {
  
  	fileSet := token.NewFileSet()
  	fileTree, err := goparser.ParseFile(fileSet, mainApiFile, nil, goparser.ParseComments)
  	if err != nil {
  		log.Fatalf("Can not parse general API information: %v\n", err)
  	}
  
  	parser.Listing.BasePath = "{{.}}"
  	parser.Listing.SwaggerVersion = SwaggerVersion
  	if fileTree.Comments != nil {
  		for _, comment := range fileTree.Comments {
  			for _, commentLine := range strings.Split(comment.Text(), "\n") {
  				attribute := strings.ToLower(strings.Split(commentLine, " ")[0])
  				switch attribute {
  				case "@apiversion":
  					parser.Listing.ApiVersion = strings.TrimSpace(commentLine[len(attribute):])
  				case "@apititle":
  					parser.Listing.Infos.Title = strings.TrimSpace(commentLine[len(attribute):])
  				case "@apidescription":
  					parser.Listing.Infos.Description = strings.TrimSpace(commentLine[len(attribute):])
  				case "@termsofserviceurl":
  					parser.Listing.Infos.TermsOfServiceUrl = strings.TrimSpace(commentLine[len(attribute):])
  				case "@contact":
  					parser.Listing.Infos.Contact = strings.TrimSpace(commentLine[len(attribute):])
  				case "@licenseurl":
  					parser.Listing.Infos.LicenseUrl = strings.TrimSpace(commentLine[len(attribute):])
  				case "@license":
  					parser.Listing.Infos.License = strings.TrimSpace(commentLine[len(attribute):])
  				case "@basepath":
  					parser.Listing.BasePath = strings.TrimSpace(commentLine[len(attribute):])
  				}
  			}
  		}
  	}
  }
docs: //Read web/main.go to get General info