Miniskriptsprache mit procedureaufrufen...
Verfasst: 25.02.2012 16:55
hey zusammen, wenn man eine prozedur anhand ihrer adresse aufrufen will
macht man das ja mit prototypes, und zwar so ungefähr (danke nochmal STARGÅTE)
naja gut, ich will eine einfache skriptsprache umsetzen, bei der es eben "keywords" giebt, die erkannt werden und auf die dann irgendwas passierten soll, und das ist dann jeweils in einer prozedur für dieses eine keyword geschrieben. bei mir sieht das dann vielleicht so aus:
soo gut, und wenn ich jetzt irgendeine schleife durchmach um den skript auszuführen und dann eine prozedur aufgerufen werden soll dann steh ich vor dem problem dass das was "BlubAufruf" im oberen code ist, also der prototype, für jede prozedur anders ist und einen anderen namen hat. hmm
vielleicht könnte ich auch auf den prototype irgendwie einen pointer machen?
wie könnte man sowas umsetzen?
danke für eure hilfe! schönes wochenende noch bei dem super wetter
macht man das ja mit prototypes, und zwar so ungefähr (danke nochmal STARGÅTE)
Code: Alles auswählen
Prototype BlubAufruf(paramter1.s)
Procedure blub(parameter.s)
Debug parameter.s
EndProcedure
Adresse = @blub()
Aufruf.BlubAufruf = Adresse
Aufruf("Test")
Code: Alles auswählen
Global NewMap keywords.l() ; long -> procedure address
;/// Procedures
Global Procedure1.l ; für mögl. rückgabewert
Prototype Procedure1()
Procedure Procedure1()
; irgendwas...
ProcedureReturn Random(1)
EndProcedure
Global Procedure2.l ; für mögl. rückgabewert
Prototype Procedure2(text.s)
Procedure Procedure2(text.s)
; irgendwas...
Debug text
EndProcedure
;/// Keywords definieren
keywords("Eins") = @Procedure1
keywords("Zwei") = @Procedure2
vielleicht könnte ich auch auf den prototype irgendwie einen pointer machen?
wie könnte man sowas umsetzen?
danke für eure hilfe! schönes wochenende noch bei dem super wetter
