Referencing to the current unidentified function in LuaIs there a better way to do optional function parameters in JavaScript?What's the difference between a method and a function?var functionName = function() vs function functionName() Jump to function definition in vimCalling dynamic function with dynamic parameters in JavascriptSet a default parameter value for a JavaScript functionjQuery's .click - pass parameters to user functionWhat does the exclamation mark do before the function?How to pass all arguments passed to my bash script to a function of mine?How can I view the source code for a function?

How were concentration and extermination camp guards recruited?

PhD student with mental health issues and bad performance

Whats the next step after commercial fusion reactors?

Does the "6 seconds per round" rule apply to speaking/roleplaying during combat situations?

Can a 2nd-level sorcerer use sorcery points to create a 2nd-level spell slot?

Ancestor born in Bristol City workhouse?

Is the decompression of compressed and encrypted data without decryption also theoretically impossible?

Why did a party with more votes get fewer seats in the 2019 European Parliament election in Denmark?

Secure offsite backup, even in the case of hacker root access

What happened to all the nuclear material being smuggled after the fall of the USSR?

Smooth switching between 12v batteries, with toggle switch

Identification quotas - TIKZ LaTeX

You've spoiled/damaged the card

X-shaped crossword

How to make a setting relevant?

Working in the USA for living expenses only; allowed on VWP?

Incremental Ranges!

How do I calculate APR from monthly instalments?

Is there any word or phrase for negative bearing?

Are there cubesats in GEO?

Completing the square to find if quadratic form is positive definite.

How hard would it be to convert a glider into an powered electric aircraft?

My coworkers think I had a long honeymoon. Actually I was diagnosed with cancer. How do I talk about it?

Avoiding cliches when writing gods



Referencing to the current unidentified function in Lua


Is there a better way to do optional function parameters in JavaScript?What's the difference between a method and a function?var functionName = function() vs function functionName() Jump to function definition in vimCalling dynamic function with dynamic parameters in JavascriptSet a default parameter value for a JavaScript functionjQuery's .click - pass parameters to user functionWhat does the exclamation mark do before the function?How to pass all arguments passed to my bash script to a function of mine?How can I view the source code for a function?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








0















I like using nested functions, but how can I deal with something like this:



addEvent("onQuestion", function() body end)


I want to do something like removeEvent in the same function, but it requires the function as a second argument



addEvent("onQuestion", function()
do..some..stuff
removeEvent("onQuestion", thisFunction)
end)









share|improve this question






























    0















    I like using nested functions, but how can I deal with something like this:



    addEvent("onQuestion", function() body end)


    I want to do something like removeEvent in the same function, but it requires the function as a second argument



    addEvent("onQuestion", function()
    do..some..stuff
    removeEvent("onQuestion", thisFunction)
    end)









    share|improve this question


























      0












      0








      0








      I like using nested functions, but how can I deal with something like this:



      addEvent("onQuestion", function() body end)


      I want to do something like removeEvent in the same function, but it requires the function as a second argument



      addEvent("onQuestion", function()
      do..some..stuff
      removeEvent("onQuestion", thisFunction)
      end)









      share|improve this question
















      I like using nested functions, but how can I deal with something like this:



      addEvent("onQuestion", function() body end)


      I want to do something like removeEvent in the same function, but it requires the function as a second argument



      addEvent("onQuestion", function()
      do..some..stuff
      removeEvent("onQuestion", thisFunction)
      end)






      function lua






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 24 at 14:18









      Nick Parsons

      10.9k31029




      10.9k31029










      asked Mar 24 at 14:15









      Mahmoud SagrMahmoud Sagr

      1




      1






















          1 Answer
          1






          active

          oldest

          votes


















          2














          If the way removeEvent identifies the specific event function to remove by providing that exact function, then that's what you have to do. So the function needs to be stored somewhere, so that the function can pass it to removeEvent.



          That would typically look like this:



          local function eventFunc()
          do..some..stuff
          removeEvent("onQuestion", eventFunc)
          end

          addEvent("onQuestion", eventFunc)


          If you want a more generic solution, you can create an addSelfRemoveEvent wrapper function:



          function addSelfRemoveEvent(eventName, func)
          local outer function()
          func()
          removeEvent(eventName, outer)
          end
          addEvent(eventName, outer)
          end





          share|improve this answer

























          • That's a really nice solution, thanks :)

            – Mahmoud Sagr
            Mar 25 at 1:44











          • The second example will not work.

            – Egor Skriptunoff
            Mar 25 at 18:41











          • @EgorSkriptunoff: Why doesn't it work?

            – Nicol Bolas
            Mar 25 at 20:01











          • @EgorSkriptunoff: Fixed.

            – Nicol Bolas
            Mar 25 at 20:04











          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55324715%2freferencing-to-the-current-unidentified-function-in-lua%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          2














          If the way removeEvent identifies the specific event function to remove by providing that exact function, then that's what you have to do. So the function needs to be stored somewhere, so that the function can pass it to removeEvent.



          That would typically look like this:



          local function eventFunc()
          do..some..stuff
          removeEvent("onQuestion", eventFunc)
          end

          addEvent("onQuestion", eventFunc)


          If you want a more generic solution, you can create an addSelfRemoveEvent wrapper function:



          function addSelfRemoveEvent(eventName, func)
          local outer function()
          func()
          removeEvent(eventName, outer)
          end
          addEvent(eventName, outer)
          end





          share|improve this answer

























          • That's a really nice solution, thanks :)

            – Mahmoud Sagr
            Mar 25 at 1:44











          • The second example will not work.

            – Egor Skriptunoff
            Mar 25 at 18:41











          • @EgorSkriptunoff: Why doesn't it work?

            – Nicol Bolas
            Mar 25 at 20:01











          • @EgorSkriptunoff: Fixed.

            – Nicol Bolas
            Mar 25 at 20:04















          2














          If the way removeEvent identifies the specific event function to remove by providing that exact function, then that's what you have to do. So the function needs to be stored somewhere, so that the function can pass it to removeEvent.



          That would typically look like this:



          local function eventFunc()
          do..some..stuff
          removeEvent("onQuestion", eventFunc)
          end

          addEvent("onQuestion", eventFunc)


          If you want a more generic solution, you can create an addSelfRemoveEvent wrapper function:



          function addSelfRemoveEvent(eventName, func)
          local outer function()
          func()
          removeEvent(eventName, outer)
          end
          addEvent(eventName, outer)
          end





          share|improve this answer

























          • That's a really nice solution, thanks :)

            – Mahmoud Sagr
            Mar 25 at 1:44











          • The second example will not work.

            – Egor Skriptunoff
            Mar 25 at 18:41











          • @EgorSkriptunoff: Why doesn't it work?

            – Nicol Bolas
            Mar 25 at 20:01











          • @EgorSkriptunoff: Fixed.

            – Nicol Bolas
            Mar 25 at 20:04













          2












          2








          2







          If the way removeEvent identifies the specific event function to remove by providing that exact function, then that's what you have to do. So the function needs to be stored somewhere, so that the function can pass it to removeEvent.



          That would typically look like this:



          local function eventFunc()
          do..some..stuff
          removeEvent("onQuestion", eventFunc)
          end

          addEvent("onQuestion", eventFunc)


          If you want a more generic solution, you can create an addSelfRemoveEvent wrapper function:



          function addSelfRemoveEvent(eventName, func)
          local outer function()
          func()
          removeEvent(eventName, outer)
          end
          addEvent(eventName, outer)
          end





          share|improve this answer















          If the way removeEvent identifies the specific event function to remove by providing that exact function, then that's what you have to do. So the function needs to be stored somewhere, so that the function can pass it to removeEvent.



          That would typically look like this:



          local function eventFunc()
          do..some..stuff
          removeEvent("onQuestion", eventFunc)
          end

          addEvent("onQuestion", eventFunc)


          If you want a more generic solution, you can create an addSelfRemoveEvent wrapper function:



          function addSelfRemoveEvent(eventName, func)
          local outer function()
          func()
          removeEvent(eventName, outer)
          end
          addEvent(eventName, outer)
          end






          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Mar 25 at 20:04

























          answered Mar 24 at 14:46









          Nicol BolasNicol Bolas

          297k35494672




          297k35494672












          • That's a really nice solution, thanks :)

            – Mahmoud Sagr
            Mar 25 at 1:44











          • The second example will not work.

            – Egor Skriptunoff
            Mar 25 at 18:41











          • @EgorSkriptunoff: Why doesn't it work?

            – Nicol Bolas
            Mar 25 at 20:01











          • @EgorSkriptunoff: Fixed.

            – Nicol Bolas
            Mar 25 at 20:04

















          • That's a really nice solution, thanks :)

            – Mahmoud Sagr
            Mar 25 at 1:44











          • The second example will not work.

            – Egor Skriptunoff
            Mar 25 at 18:41











          • @EgorSkriptunoff: Why doesn't it work?

            – Nicol Bolas
            Mar 25 at 20:01











          • @EgorSkriptunoff: Fixed.

            – Nicol Bolas
            Mar 25 at 20:04
















          That's a really nice solution, thanks :)

          – Mahmoud Sagr
          Mar 25 at 1:44





          That's a really nice solution, thanks :)

          – Mahmoud Sagr
          Mar 25 at 1:44













          The second example will not work.

          – Egor Skriptunoff
          Mar 25 at 18:41





          The second example will not work.

          – Egor Skriptunoff
          Mar 25 at 18:41













          @EgorSkriptunoff: Why doesn't it work?

          – Nicol Bolas
          Mar 25 at 20:01





          @EgorSkriptunoff: Why doesn't it work?

          – Nicol Bolas
          Mar 25 at 20:01













          @EgorSkriptunoff: Fixed.

          – Nicol Bolas
          Mar 25 at 20:04





          @EgorSkriptunoff: Fixed.

          – Nicol Bolas
          Mar 25 at 20:04



















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55324715%2freferencing-to-the-current-unidentified-function-in-lua%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Kamusi Yaliyomo Aina za kamusi | Muundo wa kamusi | Faida za kamusi | Dhima ya picha katika kamusi | Marejeo | Tazama pia | Viungo vya nje | UrambazajiKuhusu kamusiGo-SwahiliWiki-KamusiKamusi ya Kiswahili na Kiingerezakuihariri na kuongeza habari

          Swift 4 - func physicsWorld not invoked on collision? The Next CEO of Stack OverflowHow to call Objective-C code from Swift#ifdef replacement in the Swift language@selector() in Swift?#pragma mark in Swift?Swift for loop: for index, element in array?dispatch_after - GCD in Swift?Swift Beta performance: sorting arraysSplit a String into an array in Swift?The use of Swift 3 @objc inference in Swift 4 mode is deprecated?How to optimize UITableViewCell, because my UITableView lags

          Access current req object everywhere in Node.js ExpressWhy are global variables considered bad practice? (node.js)Using req & res across functionsHow do I get the path to the current script with Node.js?What is Node.js' Connect, Express and “middleware”?Node.js w/ express error handling in callbackHow to access the GET parameters after “?” in Express?Modify Node.js req object parametersAccess “app” variable inside of ExpressJS/ConnectJS middleware?Node.js Express app - request objectAngular Http Module considered middleware?Session variables in ExpressJSAdd properties to the req object in expressjs with Typescript