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
}
var runTranslatedImport func(translatedImport, ArObject) (ArObject, ArErr)
var runTranslatedImport func(translatedImport, ArObject, bool) (ArObject, ArErr)
func init() {
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 {
return imported[translatedImport.p], ArErr{}
@@ -93,7 +93,7 @@ func __runTranslatedImport(translatedImport translatedImport, global ArObject) (
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)
path := realpath
if extention == "" {

View File

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

View File

@@ -82,7 +82,7 @@ func parseGenericImport(code UNPARSEcode, index int, codeline []UNPARSEcode) (Ar
if str, ok := toImport.(string); ok {
importOBJ.pretranslated = true
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.line == 0 {
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}
}
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.line == 0 {
err.line = importOBJ.Line
@@ -126,7 +126,7 @@ func runImport(importOBJ ArImport, stack stack, stacklevel int) (any, ArErr) {
return nil, err
}
}
stackMap, err := runTranslatedImport(translated, stack[0])
stackMap, err := runTranslatedImport(translated, stack[0], false)
if err.EXISTS {
if err.line == 0 {
err.line = importOBJ.Line