[#625] morph/client: make all constructors return no error

In some places we panic, in some we return error, in some (audit) just return a client.
However in all of the places static client is created immediately before
the sugared-client creation.

This commit makes all constructors to just return a client for the sake
of code simplification and unification.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
remotes/fyrchik/fix-filepath
Evgenii Stratonikov 2022-01-29 16:21:49 +03:00 committed by LeL
parent 3c5b62d839
commit 0decb95591
11 changed files with 12 additions and 73 deletions

View File

@ -26,12 +26,6 @@ const (
)
// New creates, initializes and returns the Client instance.
//
// If StaticClient is nil, client.ErrNilStaticClient is returned.
func New(c *client.StaticClient) (*Client, error) {
if c == nil {
return nil, client.ErrNilStaticClient
}
return &Client{client: c}, nil
func New(c *client.StaticClient) *Client {
return &Client{client: c}
}

View File

@ -67,13 +67,8 @@ func NewFromMorph(cli *client.Client, contract util.Uint160, fee fixedn.Fixed8,
return nil, fmt.Errorf("could not create static client of Balance contract: %w", err)
}
enhancedBalanceClient, err := balance.New(staticClient)
if err != nil {
return nil, fmt.Errorf("could not create Balance contract client: %w", err)
}
return &Wrapper{
StaticClient: staticClient,
client: enhancedBalanceClient,
client: balance.New(staticClient),
}, nil
}

View File

@ -36,14 +36,8 @@ const (
)
// New creates, initializes and returns the Client instance.
//
// If StaticClient is nil, client.ErrNilStaticClient is returned.
func New(c *client.StaticClient) (*Client, error) {
if c == nil {
return nil, client.ErrNilStaticClient
}
return &Client{client: c}, nil
func New(c *client.StaticClient) *Client {
return &Client{client: c}
}
// Morph returns raw morph client.

View File

@ -93,13 +93,8 @@ func NewFromMorph(cli *client.Client, contract util.Uint160, fee fixedn.Fixed8,
return nil, fmt.Errorf("can't create container static client: %w", err)
}
enhancedContainerClient, err := container.New(staticClient)
if err != nil {
return nil, fmt.Errorf("can't create container morph client: %w", err)
}
return &Wrapper{
StaticClient: staticClient,
client: enhancedContainerClient,
client: container.New(staticClient),
}, nil
}

View File

@ -24,12 +24,6 @@ const (
)
// New creates, initializes and returns the Client instance.
//
// If StaticClient is nil, panic occurs.
func New(c *client.StaticClient) *Client {
if c == nil {
panic("static client is nil")
}
return &Client{client: c}
}

View File

@ -23,12 +23,6 @@ const (
)
// New creates, initializes and returns the Client instance.
//
// If StaticClient is nil, panic occurs.
func New(c *client.StaticClient) *Client {
if c == nil {
panic("static client is nil")
}
return &Client{client: c}
}

View File

@ -39,14 +39,8 @@ const (
)
// New creates, initializes and returns the Client instance.
//
// If StaticClient is nil, client.ErrNilStaticClient is returned.
func New(c *client.StaticClient) (*Client, error) {
if c == nil {
return nil, client.ErrNilStaticClient
}
return &Client{client: c}, nil
func New(c *client.StaticClient) *Client {
return &Client{client: c}
}
// Morph returns raw morph client.

View File

@ -48,14 +48,9 @@ func NewFromMorph(cli *client.Client, contract util.Uint160, fee fixedn.Fixed8,
return nil, fmt.Errorf("can't create netmap static client: %w", err)
}
enhancedNetmapClient, err := netmap.New(staticClient)
if err != nil {
return nil, fmt.Errorf("can't create netmap morph client: %w", err)
}
return &Wrapper{
StaticClient: staticClient,
client: enhancedNetmapClient,
client: netmap.New(staticClient),
}, nil
}

View File

@ -24,14 +24,8 @@ const (
)
// New creates, initializes and returns the Client instance.
//
// If StaticClient is nil, client.ErrNilStaticClient is returned.
func New(c *client.StaticClient) (*Client, error) {
if c == nil {
return nil, client.ErrNilStaticClient
}
return &Client{client: c}, nil
func New(c *client.StaticClient) *Client {
return &Client{client: c}
}
// Morph returns raw morph client.

View File

@ -65,13 +65,8 @@ func NewFromMorph(cli *client.Client, contract util.Uint160, fee fixedn.Fixed8,
return nil, fmt.Errorf("could not create static client of reputation contract: %w", err)
}
enhancedRepurationClient, err := reputation.New(staticClient)
if err != nil {
return nil, fmt.Errorf("could not create reputation contract client: %w", err)
}
return &ClientWrapper{
StaticClient: staticClient,
client: enhancedRepurationClient,
client: reputation.New(staticClient),
}, nil
}

View File

@ -1,7 +1,6 @@
package client
import (
"errors"
"fmt"
"github.com/nspcc-dev/neo-go/pkg/encoding/fixedn"
@ -35,10 +34,6 @@ type staticOpts struct {
// parameter of StaticClient.
type StaticClientOption func(*staticOpts)
// ErrNilStaticClient is returned by functions that expect
// a non-nil StaticClient pointer, but received nil.
var ErrNilStaticClient = errors.New("static client is nil")
// NewStatic creates, initializes and returns the StaticClient instance.
//
// If provided Client instance is nil, ErrNilClient is returned.