fix main being the wrong variable

This commit is contained in:
2024-03-04 10:50:58 +00:00
parent cf040a5209
commit 046ad89679
3 changed files with 8 additions and 8 deletions

View File

@@ -51,13 +51,13 @@ type translatedImport struct {
origin string origin string
} }
var runTranslatedImport func(translatedImport, ArObject) (ArObject, ArErr) var runTranslatedImport func(translatedImport, ArObject, bool) (ArObject, ArErr)
func init() { func init() {
runTranslatedImport = __runTranslatedImport runTranslatedImport = __runTranslatedImport
} }
func __runTranslatedImport(translatedImport translatedImport, global ArObject) (ArObject, ArErr) { func __runTranslatedImport(translatedImport translatedImport, global ArObject, main bool) (ArObject, ArErr) {
if _, ok := imported[translatedImport.p]; ok { if _, ok := imported[translatedImport.p]; ok {
return imported[translatedImport.p], ArErr{} return imported[translatedImport.p], ArErr{}
@@ -93,7 +93,7 @@ func __runTranslatedImport(translatedImport translatedImport, global ArObject) (
return local, ArErr{} return local, ArErr{}
} }
func translateImport(realpath string, origin string, main bool) (translatedImport, ArErr) { func translateImport(realpath string, origin string) (translatedImport, ArErr) {
extention := filepath.Ext(realpath) extention := filepath.Ext(realpath)
path := realpath path := realpath
if extention == "" { if extention == "" {

View File

@@ -61,12 +61,12 @@ func main() {
if e != nil { if e != nil {
panic(e) panic(e)
} }
translated, err := translateImport(Args[0], ex, true) translated, err := translateImport(Args[0], ex)
if err.EXISTS { if err.EXISTS {
panicErr(err) panicErr(err)
os.Exit(1) os.Exit(1)
} }
_, runimeErr := runTranslatedImport(translated, global) _, runimeErr := runTranslatedImport(translated, global, true)
if runimeErr.EXISTS { if runimeErr.EXISTS {
panicErr(runimeErr) panicErr(runimeErr)
os.Exit(1) os.Exit(1)

View File

@@ -82,7 +82,7 @@ func parseGenericImport(code UNPARSEcode, index int, codeline []UNPARSEcode) (Ar
if str, ok := toImport.(string); ok { if str, ok := toImport.(string); ok {
importOBJ.pretranslated = true importOBJ.pretranslated = true
var err ArErr var err ArErr
importOBJ.translated, err = translateImport(str, filepath.Dir(filepath.ToSlash(code.path)), false) importOBJ.translated, err = translateImport(str, filepath.Dir(filepath.ToSlash(code.path)))
if err.EXISTS { if err.EXISTS {
if err.line == 0 { if err.line == 0 {
err.line = importOBJ.Line err.line = importOBJ.Line
@@ -112,7 +112,7 @@ func runImport(importOBJ ArImport, stack stack, stacklevel int) (any, ArErr) {
return nil, ArErr{"Type Error", "import requires a string, got type '" + typeof(val) + "'", importOBJ.Line, importOBJ.Path, importOBJ.Code, true} return nil, ArErr{"Type Error", "import requires a string, got type '" + typeof(val) + "'", importOBJ.Line, importOBJ.Path, importOBJ.Code, true}
} }
parent := filepath.Dir(filepath.ToSlash(importOBJ.Path)) parent := filepath.Dir(filepath.ToSlash(importOBJ.Path))
translated, err = translateImport(val.(string), parent, false) translated, err = translateImport(val.(string), parent)
if err.EXISTS { if err.EXISTS {
if err.line == 0 { if err.line == 0 {
err.line = importOBJ.Line err.line = importOBJ.Line
@@ -126,7 +126,7 @@ func runImport(importOBJ ArImport, stack stack, stacklevel int) (any, ArErr) {
return nil, err return nil, err
} }
} }
stackMap, err := runTranslatedImport(translated, stack[0]) stackMap, err := runTranslatedImport(translated, stack[0], false)
if err.EXISTS { if err.EXISTS {
if err.line == 0 { if err.line == 0 {
err.line = importOBJ.Line err.line = importOBJ.Line