From b91779462ac492d237ed89bd631ffa74aa8be03f Mon Sep 17 00:00:00 2001 From: Shulhan Date: Sat, 23 Sep 2023 21:52:48 +0700 Subject: all: merge some functions into NewScript and ParseScript Previously, we have NewScriptForLocal, NewScriptForRemote, ParseScriptForLocal, and ParseScriptForRemote. Since script for local and remote actually the same and since we remove applying environment variables at 858c26d3d940 on local, we can merge them into NewScript and ParseScript. --- awwan.go | 8 ++++---- script.go | 45 +++++++-------------------------------------- script_example_test.go | 4 ++-- 3 files changed, 13 insertions(+), 44 deletions(-) diff --git a/awwan.go b/awwan.go index 6230255..c1b0dbd 100644 --- a/awwan.go +++ b/awwan.go @@ -243,9 +243,9 @@ func (aww *Awwan) Local(req *Request) (err error) { } if len(req.Content) == 0 { - req.script, err = NewScriptForLocal(ses, req.scriptPath) + req.script, err = NewScript(ses, req.scriptPath) } else { - req.script, err = ParseScriptForLocal(ses, req.Content) + req.script, err = ParseScript(ses, req.Content) } if err != nil { return fmt.Errorf("%s: %w", logp, err) @@ -329,9 +329,9 @@ func (aww *Awwan) Play(req *Request) (err error) { } if len(req.Content) == 0 { - req.script, err = NewScriptForRemote(ses, req.scriptPath) + req.script, err = NewScript(ses, req.scriptPath) } else { - req.script, err = ParseScriptForRemote(ses, req.Content) + req.script, err = ParseScript(ses, req.Content) } if err != nil { return fmt.Errorf("%s: %w", logp, err) diff --git a/script.go b/script.go index d0ac479..cb25e16 100644 --- a/script.go +++ b/script.go @@ -17,33 +17,12 @@ type Script struct { rawLines [][]byte } -// NewScriptForLocal load the content of awwan script (".aww"), apply the -// value of session and environment variables into the script content, and -// split it into Statements. -func NewScriptForLocal(ses *Session, path string) (script *Script, err error) { - var ( - logp = "NewScriptForLocal" - content []byte - ) - - content, err = os.ReadFile(path) - if err != nil { - return nil, fmt.Errorf("%s: %w", logp, err) - } - - script, err = ParseScriptForLocal(ses, content) - if err != nil { - return nil, fmt.Errorf("%s: %w", logp, err) - } - return script, nil -} - -// NewScriptForRemote load the content of awwan script (".aww"), apply the +// NewScript load the content of awwan script (".aww"), apply the // value of session variables into the script content, and split it into // Statements. -func NewScriptForRemote(ses *Session, path string) (script *Script, err error) { +func NewScript(ses *Session, path string) (script *Script, err error) { var ( - logp = "NewScriptForRemote" + logp = `NewScript` content []byte ) @@ -52,28 +31,18 @@ func NewScriptForRemote(ses *Session, path string) (script *Script, err error) { return nil, fmt.Errorf("%s: %w", logp, err) } - script, err = ParseScriptForRemote(ses, content) + script, err = ParseScript(ses, content) if err != nil { return nil, fmt.Errorf("%s: %w", logp, err) } return script, nil } -// ParseScriptForLocal parse the script content by applying the session and -// environment variables and splitting it into Statement. -func ParseScriptForLocal(ses *Session, content []byte) (s *Script, err error) { - return parseScript(ses, content) -} - -// ParseScriptForRemote parse the script content by applying the session +// ParseScript parse the script content by applying the session // variables and splitting it into Statement. -func ParseScriptForRemote(ses *Session, content []byte) (s *Script, err error) { - return parseScript(ses, content) -} - -func parseScript(ses *Session, content []byte) (script *Script, err error) { +func ParseScript(ses *Session, content []byte) (script *Script, err error) { var ( - logp = "parseScript" + logp = `ParseScript` tmpl *template.Template buf bytes.Buffer diff --git a/script_example_test.go b/script_example_test.go index def544a..e0156af 100644 --- a/script_example_test.go +++ b/script_example_test.go @@ -8,7 +8,7 @@ import ( "log" ) -func ExampleParseScriptForLocal() { +func ExampleParseScript() { var ( envContent = ` [section] @@ -33,7 +33,7 @@ end; log.Fatal(err) } - s, err = ParseScriptForLocal(ses, []byte(scriptContent)) + s, err = ParseScript(ses, []byte(scriptContent)) if err != nil { log.Fatal(err) } -- cgit v1.3