Skip to content

Instantly share code, notes, and snippets.

@sayden
Created August 20, 2018 10:26
Show Gist options
  • Save sayden/ccc4d30a45bcfd031a77b6b1f806e373 to your computer and use it in GitHub Desktop.
Save sayden/ccc4d30a45bcfd031a77b6b1f806e373 to your computer and use it in GitHub Desktop.
package main
import "time"
type bigStruct struct {
Var1 [1048576]float64
Var2 [1048576]float64
Var3 [1048576]float64
Var4 [1048576]float64
Var5 [1048576]float64
Var6 [1048576]float64
}
type smallStruct struct {
ar [64]float64
}
type zendeskTicket struct {
ID int `json:"id"`
URL string `json:"url"`
ExternalID string `json:"external_id"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
Type string `json:"type"`
Subject string `json:"subject"`
RawSubject string `json:"raw_subject"`
Description string `json:"description"`
Priority string `json:"priority"`
Status string `json:"status"`
Recipient string `json:"recipient"`
RequesterID int `json:"requester_id"`
SubmitterID int `json:"submitter_id"`
AssigneeID int `json:"assignee_id"`
OrganizationID int `json:"organization_id"`
GroupID int `json:"group_id"`
CollaboratorIds []int `json:"collaborator_ids"`
FollowerIds []int `json:"follower_ids"`
ProblemID int `json:"problem_id"`
HasIncidents bool `json:"has_incidents"`
DueAt time.Time `json:"due_at"`
Tags []string `json:"tags"`
Via via `json:"via"`
CustomFields []customFields `json:"custom_fields"`
SatisfactionRating satisfactionRating `json:"satisfaction_rating"`
SharingAgreementIds []int `json:"sharing_agreement_ids"`
}
type satisfactionRating struct {
ID int `json:"id"`
Score string `json:"score"`
Comment string `json:"comment"`
}
type customFields struct {
ID int `json:"id"`
Value string `json:"value"`
}
type via struct {
Channel string `json:"channel"`
}
func returnValZendesk() zendeskTicket {
return zendeskTicket{}
}
func returnWithNameZendesk() (v zendeskTicket) {
return
}
func returnPointerZendesk() *zendeskTicket {
return &zendeskTicket{}
}
func returnNamedPointerZendesk() (v *zendeskTicket) {
v = &zendeskTicket{}
return
}
func returnVal() bigStruct {
return bigStruct{
Var1: [1048576]float64{},
Var2: [1048576]float64{},
Var3: [1048576]float64{},
Var4: [1048576]float64{},
Var5: [1048576]float64{},
Var6: [1048576]float64{},
}
}
func returnWithName() (v bigStruct) {
v.Var1 = [1048576]float64{}
v.Var2 = [1048576]float64{}
v.Var3 = [1048576]float64{}
v.Var4 = [1048576]float64{}
v.Var5 = [1048576]float64{}
v.Var6 = [1048576]float64{}
return
}
func returnPointer() *bigStruct {
return &bigStruct{
Var1: [1048576]float64{},
Var2: [1048576]float64{},
Var3: [1048576]float64{},
Var4: [1048576]float64{},
Var5: [1048576]float64{},
Var6: [1048576]float64{},
}
}
func returnNamedPointer() (v *bigStruct) {
v = &bigStruct{
Var1: [1048576]float64{},
Var2: [1048576]float64{},
Var3: [1048576]float64{},
Var4: [1048576]float64{},
Var5: [1048576]float64{},
Var6: [1048576]float64{},
}
return
}
func returnValSmall() smallStruct {
return smallStruct{ar: [64]float64{}}
}
func returnWithNameSmall() (v smallStruct) {
v.ar = [64]float64{}
return
}
func returnPointerSmall() *smallStruct {
return &smallStruct{ar: [64]float64{}}
}
func returnNamedPointerSmall() (v *smallStruct) {
v = &smallStruct{ar: [64]float64{}}
return
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment