11package evaluator
22
33import (
4+ "errors"
45 "fmt"
56 "maps"
67 "os"
@@ -13,6 +14,11 @@ import (
1314 "github.com/Dobefu/DLiteScript/internal/tokenizer"
1415)
1516
17+ var errFailedToReadImportedFile = errors .New ("failed to read imported file" )
18+ var errFailedToTokenizeImportedFile = errors .New ("failed to tokenize imported file" )
19+ var errFailedToParseImportedFile = errors .New ("failed to parse imported file" )
20+ var errFailedToEvaluateImportedFile = errors .New ("failed to evaluate imported file" )
21+
1622// evaluateImportStatement evaluates an import statement.
1723func (e * Evaluator ) evaluateImportStatement (
1824 node * ast.ImportStatement ,
@@ -42,7 +48,8 @@ func (e *Evaluator) evaluateImportStatement(
4248
4349 if err != nil {
4450 return nil , fmt .Errorf (
45- "failed to read imported file '%s': %s" ,
51+ "%w '%s': %s" ,
52+ errFailedToReadImportedFile ,
4653 path ,
4754 err .Error (),
4855 )
@@ -53,7 +60,8 @@ func (e *Evaluator) evaluateImportStatement(
5360
5461 if err != nil {
5562 return nil , fmt .Errorf (
56- "failed to tokenize imported file '%s': %s" ,
63+ "%w '%s': %s" ,
64+ errFailedToTokenizeImportedFile ,
5765 path , err .Error (),
5866 )
5967 }
@@ -63,7 +71,8 @@ func (e *Evaluator) evaluateImportStatement(
6371
6472 if err != nil {
6573 return nil , fmt .Errorf (
66- "failed to parse imported file '%s': %s" ,
74+ "%w '%s': %s" ,
75+ errFailedToParseImportedFile ,
6776 path , err .Error (),
6877 )
6978 }
@@ -77,7 +86,8 @@ func (e *Evaluator) evaluateImportStatement(
7786
7887 if err != nil {
7988 return nil , fmt .Errorf (
80- "failed to evaluate imported file '%s': %s" ,
89+ "%w '%s': %s" ,
90+ errFailedToEvaluateImportedFile ,
8191 path , err .Error (),
8292 )
8393 }
0 commit comments