Optimisation: Large struct pointer conversion (final part) (#265)

Completes large struct pointer optomisations over the entire codebase and enables hugeParams linter by default
This commit is contained in:
Andrew
2019-04-04 15:31:49 +11:00
committed by Adrian Gallagher
parent 107cf76373
commit ca55f2f965
97 changed files with 195 additions and 195 deletions

View File

@@ -131,7 +131,7 @@ func SecondCurrencyExists(exchange string, p currency.Pair) bool {
}
// CreateNewTicker creates a new Ticker
func CreateNewTicker(exchangeName string, tickerNew Price, tickerType string) Ticker {
func CreateNewTicker(exchangeName string, tickerNew *Price, tickerType string) Ticker {
m.Lock()
defer m.Unlock()
ticker := Ticker{}
@@ -139,7 +139,7 @@ func CreateNewTicker(exchangeName string, tickerNew Price, tickerType string) Ti
ticker.Price = make(map[string]map[string]map[string]Price)
a := make(map[string]map[string]Price)
b := make(map[string]Price)
b[tickerType] = tickerNew
b[tickerType] = *tickerNew
a[tickerNew.Pair.Quote.Upper().String()] = b
ticker.Price[tickerNew.Pair.Base.Upper().String()] = a
Tickers = append(Tickers, ticker)
@@ -148,7 +148,7 @@ func CreateNewTicker(exchangeName string, tickerNew Price, tickerType string) Ti
// ProcessTicker processes incoming tickers, creating or updating the Tickers
// list
func ProcessTicker(exchangeName string, tickerNew Price, tickerType string) error {
func ProcessTicker(exchangeName string, tickerNew *Price, tickerType string) error {
if tickerNew.Pair.String() == "" {
return errors.New("")
}
@@ -164,7 +164,7 @@ func ProcessTicker(exchangeName string, tickerNew Price, tickerType string) erro
if FirstCurrencyExists(exchangeName, tickerNew.Pair.Base) {
m.Lock()
a := make(map[string]Price)
a[tickerType] = tickerNew
a[tickerType] = *tickerNew
ticker.Price[tickerNew.Pair.Base.Upper().String()][tickerNew.Pair.Quote.Upper().String()] = a
m.Unlock()
return nil
@@ -173,7 +173,7 @@ func ProcessTicker(exchangeName string, tickerNew Price, tickerType string) erro
m.Lock()
a := make(map[string]map[string]Price)
b := make(map[string]Price)
b[tickerType] = tickerNew
b[tickerType] = *tickerNew
a[tickerNew.Pair.Quote.Upper().String()] = b
ticker.Price[tickerNew.Pair.Base.Upper().String()] = a
m.Unlock()

View File

@@ -25,7 +25,7 @@ func TestPriceToString(t *testing.T) {
PriceATH: 1337,
}
newTicker := CreateNewTicker("ANX", priceStruct, Spot)
newTicker := CreateNewTicker("ANX", &priceStruct, Spot)
if newTicker.PriceToString(newPair, "last", Spot) != "1200" {
t.Error("Test Failed - ticker PriceToString last value is incorrect")
@@ -66,7 +66,7 @@ func TestGetTicker(t *testing.T) {
PriceATH: 1337,
}
err := ProcessTicker("bitfinex", priceStruct, Spot)
err := ProcessTicker("bitfinex", &priceStruct, Spot)
if err != nil {
t.Fatal("Test failed. ProcessTicker error", err)
}
@@ -98,7 +98,7 @@ func TestGetTicker(t *testing.T) {
priceStruct.PriceATH = 9001
priceStruct.Pair.Base = currency.ETH
err = ProcessTicker("bitfinex", priceStruct, "futures_3m")
err = ProcessTicker("bitfinex", &priceStruct, "futures_3m")
if err != nil {
t.Fatal("Test failed. ProcessTicker error", err)
}
@@ -126,7 +126,7 @@ func TestGetTickerByExchange(t *testing.T) {
PriceATH: 1337,
}
anxTicker := CreateNewTicker("ANX", priceStruct, Spot)
anxTicker := CreateNewTicker("ANX", &priceStruct, Spot)
Tickers = append(Tickers, anxTicker)
tickerPtr, err := GetTickerByExchange("ANX")
@@ -151,7 +151,7 @@ func TestFirstCurrencyExists(t *testing.T) {
PriceATH: 1337,
}
alphaTicker := CreateNewTicker("alphapoint", priceStruct, Spot)
alphaTicker := CreateNewTicker("alphapoint", &priceStruct, Spot)
Tickers = append(Tickers, alphaTicker)
if !FirstCurrencyExists("alphapoint", currency.BTC) {
@@ -177,7 +177,7 @@ func TestSecondCurrencyExists(t *testing.T) {
PriceATH: 1337,
}
bitstampTicker := CreateNewTicker("bitstamp", priceStruct, "SPOT")
bitstampTicker := CreateNewTicker("bitstamp", &priceStruct, "SPOT")
Tickers = append(Tickers, bitstampTicker)
if !SecondCurrencyExists("bitstamp", newPair) {
@@ -204,7 +204,7 @@ func TestCreateNewTicker(t *testing.T) {
PriceATH: 1337,
}
newTicker := CreateNewTicker("ANX", priceStruct, Spot)
newTicker := CreateNewTicker("ANX", &priceStruct, Spot)
if reflect.ValueOf(newTicker).NumField() != 2 {
t.Error("Test Failed - ticker CreateNewTicker struct change/or updated")
@@ -259,12 +259,12 @@ func TestProcessTicker(t *testing.T) { // non-appending function to tickers
PriceATH: 1337,
}
err := ProcessTicker("btcc", Price{}, Spot)
err := ProcessTicker("btcc", &Price{}, Spot)
if err == nil {
t.Fatal("Test failed. ProcessTicker error cannot be nil")
}
err = ProcessTicker("btcc", priceStruct, Spot)
err = ProcessTicker("btcc", &priceStruct, Spot)
if err != nil {
t.Fatal("Test failed. ProcessTicker error", err)
}
@@ -280,7 +280,7 @@ func TestProcessTicker(t *testing.T) { // non-appending function to tickers
secondPair := currency.NewPairFromStrings("BTC", "AUD")
priceStruct.Pair = secondPair
err = ProcessTicker("btcc", priceStruct, Spot)
err = ProcessTicker("btcc", &priceStruct, Spot)
if err != nil {
t.Fatal("Test failed. ProcessTicker error", err)
}
@@ -326,7 +326,7 @@ func TestProcessTicker(t *testing.T) { // non-appending function to tickers
}
sm.Lock()
err = ProcessTicker(newName, tp, Spot)
err = ProcessTicker(newName, &tp, Spot)
if err != nil {
log.Error(err)
catastrophicFailure = true