2022-12-05 01:56:48 +00:00
<!DOCTYPE html>
< html >
< head >
< meta name = "viewport" content = "width=device-width, initial-scale=1" charset = "UTF-8" >
< title > DefaultUpdatableStatesMachine< / title >
< link href = "../../../images/logo-icon.svg" rel = "icon" type = "image/svg" >
< script > var pathToRoot = "../../../" ; < / script >
< script > c o n s t s t o r a g e = l o c a l S t o r a g e . g e t I t e m ( " d o k k a - d a r k - m o d e " )
if (storage == null) {
const osDarkSchemePreferred = window.matchMedia & & window.matchMedia('(prefers-color-scheme: dark)').matches
if (osDarkSchemePreferred === true) {
document.getElementsByTagName("html")[0].classList.add("theme-dark")
}
} else {
const savedDarkMode = JSON.parse(storage)
if(savedDarkMode === true) {
document.getElementsByTagName("html")[0].classList.add("theme-dark")
}
}
< / script >
< script type = "text/javascript" src = "../../../scripts/sourceset_dependencies.js" async = "async" > < / script >
< link href = "../../../styles/style.css" rel = "Stylesheet" >
< link href = "../../../styles/jetbrains-mono.css" rel = "Stylesheet" >
< link href = "../../../styles/main.css" rel = "Stylesheet" >
< link href = "../../../styles/prism.css" rel = "Stylesheet" >
< link href = "../../../styles/logo-styles.css" rel = "Stylesheet" >
< script type = "text/javascript" src = "../../../scripts/clipboard.js" async = "async" > < / script >
< script type = "text/javascript" src = "../../../scripts/navigation-loader.js" async = "async" > < / script >
< script type = "text/javascript" src = "../../../scripts/platform-content-handler.js" async = "async" > < / script >
< script type = "text/javascript" src = "../../../scripts/main.js" defer = "defer" > < / script >
< script type = "text/javascript" src = "../../../scripts/prism.js" async = "async" > < / script >
< script type = "text/javascript" src = "../../../scripts/symbol-parameters-wrapper_deferred.js" defer = "defer" > < / script >
< / head >
< body >
< div class = "navigation-wrapper" id = "navigation-wrapper" >
< div id = "leftToggler" > < span class = "icon-toggler" > < / span > < / div >
< div class = "library-name" >
< a href = "../../../index.html" >
< span > micro_utils.dokka< / span >
< / a >
< / div >
< div >
2023-06-29 14:42:19 +00:00
0.19.6 < / div >
2022-12-05 01:56:48 +00:00
< div class = "pull-right d-flex" >
< div class = "filter-section" id = "filter-section" >
< button class = "platform-tag platform-selector common-like" data-active = "" data-filter = ":micro_utils.dokka:dokkaHtml/commonMain" > common< / button >
< / div >
< button id = "theme-toggle-button" > < span id = "theme-toggle" > < / span > < / button >
< div id = "searchBar" > < / div >
< / div >
< / div >
< div id = "container" >
< div id = "leftColumn" >
< div id = "sideMenu" > < / div >
< / div >
< div id = "main" >
2023-03-10 16:40:23 +00:00
< div class = "main-content" data-page-type = "classlike" id = "content" pageIds = "micro_utils.dokka::dev.inmo.micro_utils.fsm.common/DefaultUpdatableStatesMachine///PointingToDeclaration//-1478683138" >
2022-12-05 01:56:48 +00:00
< div class = "breadcrumbs" > < a href = "../../../index.html" > micro_utils.dokka< / a > < span class = "delimiter" > /< / span > < a href = "../index.html" > dev.inmo.micro_utils.fsm.common< / a > < span class = "delimiter" > /< / span > < span class = "current" > DefaultUpdatableStatesMachine< / span > < / div >
< div class = "cover " >
< h1 class = "cover" > < span > Default< / span > < wbr > < / wbr > < span > Updatable< / span > < wbr > < / wbr > < span > States< / span > < wbr > < / wbr > < span > < span > Machine< / span > < / span > < / h1 >
< div class = "platform-hinted " data-platform-hinted = "data-platform-hinted" > < div class = "content sourceset-dependent-content" data-active = "" data-togglable = ":micro_utils.dokka:dokkaHtml/commonMain" > < div class = "symbol monospace" > < span class = "token keyword" > open < / span > < span class = "token keyword" > class < / span > < a href = "index.html" > DefaultUpdatableStatesMachine< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > : < / span > < a href = "../-state/index.html" > State< / a > < span class = "token operator" > > < / span > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > statesManager< span class = "token operator" > : < / span > < a href = "../-states-manager/index.html" > StatesManager< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > handlers< span class = "token operator" > : < / span > < a href = "https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html" > List< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../-checkable-handler-holder/index.html" > CheckableHandlerHolder< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > in < / span > < a href = "index.html" > T< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token operator" > > < / span > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > onStateHandlingErrorHandler< span class = "token operator" > : < / span > < a href = "../../dev.inmo.micro_utils.fsm.common.utils/index.html#1655009510%2FClasslikes%2F-1478683138" > StateHandlingErrorHandler< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token operator" > = < / span > defaultStateHandlingErrorHandler()< / span > < / span > < span class = "token punctuation" > )< / span > : < a href = "../-default-states-machine/index.html" > DefaultStatesMachine< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > , < a href = "../-updatable-states-machine/index.html" > UpdatableStatesMachine< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < / div > < / div > < / div >
< / div >
< div class = "tabbedcontent" >
2023-06-09 06:16:05 +00:00
< div class = "tabs-section" tabs-section = "tabs-section" > < button class = "section-tab" data-active = "" data-togglable = "CONSTRUCTOR,TYPE,PROPERTY,FUNCTION" > Members< / button > < button class = "section-tab" data-togglable = "CONSTRUCTOR,TYPE,PROPERTY,FUNCTION,EXTENSION_PROPERTY,EXTENSION_FUNCTION" > Members & Extensions< / button > < / div >
2022-12-05 01:56:48 +00:00
< div class = "tabs-section-body" >
2023-03-10 16:40:23 +00:00
< div data-togglable = "CONSTRUCTOR" >
< h2 class = "" > Constructors< / h2 >
< div class = "table" > < a data-name = "-493513707%2FConstructors%2F-1478683138" anchor-label = "DefaultUpdatableStatesMachine" id = "-493513707%2FConstructors%2F-1478683138" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" > < / a >
< div class = "table-row" data-togglable = "CONSTRUCTOR" data-filterable-current = ":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" >
< div class = "main-subrow keyValue " >
< div class = "" > < span class = "inline-flex" >
< div > < a href = "-default-updatable-states-machine.html" > < span > Default< / span > < wbr > < / wbr > < span > Updatable< / span > < wbr > < / wbr > < span > States< / span > < wbr > < / wbr > < span > < span > Machine< / span > < / span > < / a > < / div >
2022-12-05 01:56:48 +00:00
< span class = "anchor-wrapper" > < span class = "anchor-icon" pointing-to = "-493513707%2FConstructors%2F-1478683138" > < / span >
2023-03-10 16:40:23 +00:00
< div class = "copy-popup-wrapper " > < span class = "copy-popup-icon" > < / span > < span > Link copied to clipboard< / span > < / div >
< / span > < / span > < / div >
< div >
< div class = "title" >
< div class = "platform-hinted " data-platform-hinted = "data-platform-hinted" > < div class = "content sourceset-dependent-content" data-active = "" data-togglable = ":micro_utils.dokka:dokkaHtml/commonMain" > < div class = "symbol monospace" > < span class = "token keyword" > constructor< / span > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > statesManager< span class = "token operator" > : < / span > < a href = "../-states-manager/index.html" > StatesManager< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > handlers< span class = "token operator" > : < / span > < a href = "https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html" > List< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../-checkable-handler-holder/index.html" > CheckableHandlerHolder< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > in < / span > < a href = "index.html" > T< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token operator" > > < / span > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > onStateHandlingErrorHandler< span class = "token operator" > : < / span > < a href = "../../dev.inmo.micro_utils.fsm.common.utils/index.html#1655009510%2FClasslikes%2F-1478683138" > StateHandlingErrorHandler< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token operator" > = < / span > defaultStateHandlingErrorHandler()< / span > < / span > < span class = "token punctuation" > )< / span > < / div > < / div > < / div >
< / div >
2022-12-05 01:56:48 +00:00
< / div >
< / div >
< / div >
< / div >
< / div >
2023-03-10 16:40:23 +00:00
< div data-togglable = "FUNCTION" >
< h2 class = "" > Functions< / h2 >
< div class = "table" > < a data-name = "-1429929647%2FFunctions%2F-1478683138" anchor-label = "handleState" id = "-1429929647%2FFunctions%2F-1478683138" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" > < / a >
< div class = "table-row" data-togglable = "EXTENSION_FUNCTION" data-filterable-current = ":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" >
< div class = "main-subrow keyValue " >
< div class = "" > < span class = "inline-flex" >
< div > < a href = "../-default-states-machine/handle-state.html" > < span > handle< / span > < wbr > < / wbr > < span > < span > State< / span > < / span > < / a > < / div >
2022-12-05 01:56:48 +00:00
< span class = "anchor-wrapper" > < span class = "anchor-icon" pointing-to = "-1429929647%2FFunctions%2F-1478683138" > < / span >
2023-03-10 16:40:23 +00:00
< div class = "copy-popup-wrapper " > < span class = "copy-popup-icon" > < / span > < span > Link copied to clipboard< / span > < / div >
< / span > < / span > < / div >
< div >
< div class = "title" >
< div class = "platform-hinted " data-platform-hinted = "data-platform-hinted" > < div class = "content sourceset-dependent-content" data-active = "" data-togglable = ":micro_utils.dokka:dokkaHtml/commonMain" > < div class = "symbol monospace" > < span class = "token keyword" > open < / span > < span class = "token keyword" > suspend override < / span > < span class = "token keyword" > fun < / span > < a href = "../-states-machine/index.html" > StatesMachine< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > in < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token punctuation" > .< / span > < a href = "../-default-states-machine/handle-state.html" > < span class = "token function" > handleState< / span > < / a > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > state< span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < / span > < / span > < span class = "token punctuation" > )< / span > < span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < span class = "token operator" > ?< / span > < / div > < div class = "brief " > < p class = "paragraph" > Will call < a href = "../-default-states-machine/launch-state-handling.html" > launchStateHandling< / a > for state handling< / p > < / div > < / div > < / div >
< / div >
< / div >
< / div >
< / div >
< a data-name = "1180048627%2FFunctions%2F-1478683138" anchor-label = "holder" id = "1180048627%2FFunctions%2F-1478683138" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" > < / a >
< div class = "table-row" data-togglable = "EXTENSION_FUNCTION" data-filterable-current = ":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" >
< div class = "main-subrow keyValue " >
< div class = "" > < span class = "inline-flex" >
< div > < a href = "../holder.html" > < span > < span > holder< / span > < / span > < / a > < / div >
< span class = "anchor-wrapper" > < span class = "anchor-icon" pointing-to = "1180048627%2FFunctions%2F-1478683138" > < / span >
< div class = "copy-popup-wrapper " > < span class = "copy-popup-icon" > < / span > < span > Link copied to clipboard< / span > < / div >
< / span > < / span > < / div >
< div >
< div class = "title" >
< div class = "platform-hinted " data-platform-hinted = "data-platform-hinted" > < div class = "content sourceset-dependent-content" data-active = "" data-togglable = ":micro_utils.dokka:dokkaHtml/commonMain" > < div class = "symbol monospace" > < span class = "token keyword" > inline < / span > < span class = "token keyword" > fun < / span > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > I< / a > < span class = "token operator" > : < / span > < a href = "../holder.html" > O< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > O< / a > < span class = "token operator" > : < / span > < a href = "../-state/index.html" > State< / a > < span class = "token operator" > > < / span > < a href = "../-states-handler/index.html" > StatesHandler< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > I< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > O< / a > < span class = "token operator" > > < / span > < span class = "token punctuation" > .< / span > < a href = "../holder.html" > < span class = "token function" > holder< / span > < / a > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > strict< span class = "token operator" > : < / span > < a href = "https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html" > Boolean< / a > < span class = "token operator" > = < / span > < span class = "token boolean" > true< / span > < / span > < / span > < span class = "token punctuation" > )< / span > < span class = "token operator" > : < / span > < a href = "../-customizable-handler-holder/index.html" > CustomizableHandlerHolder< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > O< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > O< / a > < span class = "token operator" > > < / span > < / div > < div class = "symbol monospace" > < span class = "token keyword" > inline < / span > < span class = "token keyword" > fun < / span > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > I< / a > < span class = "token operator" > : < / span > < a href = "../holder.html" > O< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > O< / a > < span class = "token operator" > : < / span > < a href = "../-state/index.html" > State< / a > < span class = "token operator" > > < / span > < a href = "../-states-handler/index.html" > StatesHandler< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > I< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > O< / a > < span class = "token operator" > > < / span > < span class = "token punctuation" > .< / span > < a href = "../holder.html" > < span class = "token function" > holder< / span > < / a > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > < span class = "token keyword" > noinline < / span > filter< span class = "token operator" > : < / span > < span class = "token keyword" > suspend < / span > < span class = "token punctuation" > (< / span > < span class = "token keyword" > < / span > state< span class = "token operator" > : < / span > < a href = "../-state/index.html" > State< / a > < span class = "token punctuation" > )< / span > < span class = "token operator" > -> < / span > < span class = "token keyword" > < / span > < a href = "https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html" > Boolean< / a > < / span > < / span > < span class = "token punctuation" > )< / span > < span class = "token operator" > : < / span > < a href = "../-customizable-handler-holder/index.html" > CustomizableHandlerHolder< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > O< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "../holder.html" > O< / a > < span class = "token operator" > > < / span > < / div > < / div > < / div >
< / div >
2022-12-05 01:56:48 +00:00
< / div >
< / div >
< / div >
< a data-name = "-1167855008%2FFunctions%2F-1478683138" anchor-label = "launchStateHandling" id = "-1167855008%2FFunctions%2F-1478683138" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" > < / a >
2023-03-10 16:40:23 +00:00
< div class = "table-row" data-filterable-current = ":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" >
< div class = "main-subrow keyValue " >
< div class = "" > < span class = "inline-flex" >
< div > < a href = "../-default-states-machine/launch-state-handling.html" > < span > launch< / span > < wbr > < / wbr > < span > State< / span > < wbr > < / wbr > < span > < span > Handling< / span > < / span > < / a > < / div >
2022-12-05 01:56:48 +00:00
< span class = "anchor-wrapper" > < span class = "anchor-icon" pointing-to = "-1167855008%2FFunctions%2F-1478683138" > < / span >
2023-03-10 16:40:23 +00:00
< div class = "copy-popup-wrapper " > < span class = "copy-popup-icon" > < / span > < span > Link copied to clipboard< / span > < / div >
< / span > < / span > < / div >
< div >
< div class = "title" >
< div class = "platform-hinted " data-platform-hinted = "data-platform-hinted" > < div class = "content sourceset-dependent-content" data-active = "" data-togglable = ":micro_utils.dokka:dokkaHtml/commonMain" > < div class = "symbol monospace" > < span class = "token keyword" > open < / span > < span class = "token keyword" > suspend override < / span > < span class = "token keyword" > fun < / span > < a href = "../-default-states-machine/launch-state-handling.html" > < span class = "token function" > launchStateHandling< / span > < / a > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > state< span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > handlers< span class = "token operator" > : < / span > < a href = "https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html" > List< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../-checkable-handler-holder/index.html" > CheckableHandlerHolder< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > in < / span > < a href = "index.html" > T< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token operator" > > < / span > < / span > < / span > < span class = "token punctuation" > )< / span > < span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < span class = "token operator" > ?< / span > < / div > < div class = "symbol monospace" > < span class = "token keyword" > open < / span > < span class = "token keyword" > suspend < / span > < span class = "token keyword" > fun < / span > < a href = "../-states-machine/launch-state-handling.html" > < span class = "token function" > launchStateHandling< / span > < / a > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > state< span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > handlers< span class = "token operator" > : < / span > < a href = "https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html" > List< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "../-checkable-handler-holder/index.html" > CheckableHandlerHolder< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > in < / span > < a href = "index.html" > T< / a > < span class = "token punctuation" > , < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token operator" > > < / span > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > onStateHandlingErrorHandler< span class = "token operator" > : < / span > < a href = "../../dev.inmo.micro_utils.fsm.common.utils/index.html#1655009510%2FClasslikes%2F-1478683138" > StateHandlingErrorHandler< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < / span > < / span > < span class = "token punctuation" > )< / span > < span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < span class = "token operator" > ?< / span > < / div > < / div > < / div >
< / div >
2022-12-05 01:56:48 +00:00
< / div >
< / div >
< / div >
< a data-name = "142106656%2FFunctions%2F-1478683138" anchor-label = "performStateUpdate" id = "142106656%2FFunctions%2F-1478683138" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" > < / a >
2023-03-10 16:40:23 +00:00
< div class = "table-row" data-filterable-current = ":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" >
< div class = "main-subrow keyValue " >
< div class = "" > < span class = "inline-flex" >
< div > < a href = "perform-state-update.html" > < span > perform< / span > < wbr > < / wbr > < span > State< / span > < wbr > < / wbr > < span > < span > Update< / span > < / span > < / a > < / div >
2022-12-05 01:56:48 +00:00
< span class = "anchor-wrapper" > < span class = "anchor-icon" pointing-to = "142106656%2FFunctions%2F-1478683138" > < / span >
2023-03-10 16:40:23 +00:00
< div class = "copy-popup-wrapper " > < span class = "copy-popup-icon" > < / span > < span > Link copied to clipboard< / span > < / div >
< / span > < / span > < / div >
< div >
< div class = "title" >
< div class = "platform-hinted " data-platform-hinted = "data-platform-hinted" > < div class = "content sourceset-dependent-content" data-active = "" data-togglable = ":micro_utils.dokka:dokkaHtml/commonMain" > < div class = "symbol monospace" > < span class = "token keyword" > open < / span > < span class = "token keyword" > suspend override < / span > < span class = "token keyword" > fun < / span > < a href = "perform-state-update.html" > < span class = "token function" > performStateUpdate< / span > < / a > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > previousState< span class = "token operator" > : < / span > < a href = "../../dev.inmo.micro_utils.common/-optional/index.html" > Optional< / a > < span class = "token operator" > < < / span > < span class = "token keyword" > < / span > < a href = "index.html" > T< / a > < span class = "token operator" > > < / span > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > actualState< span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > scope< span class = "token operator" > : < / span > < span data-unresolved-link = "kotlinx.coroutines/CoroutineScope///PointingToDeclaration/" > CoroutineScope< / span > < / span > < / span > < span class = "token punctuation" > )< / span > < / div > < div class = "brief " > < p class = "paragraph" > Realization of this update will use the < span data-unresolved-link = "kotlinx.coroutines/Job///PointingToDeclaration/" > Job< / span > of < a href = "perform-state-update.html" > previousState< / a > in < span data-unresolved-link = "dev.inmo.micro_utils.fsm.common/DefaultUpdatableStatesMachine/statesJobs/#/PointingToDeclaration/" > statesJobs< / span > and < span data-unresolved-link = "dev.inmo.micro_utils.fsm.common/DefaultUpdatableStatesMachine/jobsStates/#/PointingToDeclaration/" > jobsStates< / span > if < a href = "perform-state-update.html" > previousState< / a > is < a href = "../../dev.inmo.micro_utils.common/-optional/-companion/presented.html" > Optional.presented< / a > and < span data-unresolved-link = "dev.inmo.micro_utils.fsm.common/DefaultUpdatableStatesMachine/shouldReplaceJob/#dev.inmo.micro_utils.common.Optional[TypeParam(bounds=[dev.inmo.micro_utils.fsm.common.State])]#TypeParam(bounds=[dev.inmo.micro_utils.fsm.common.State])/PointingToDeclaration/" > shouldReplaceJob< / span > has returned true for < a href = "perform-state-update.html" > previousState< / a > and < a href = "perform-state-update.html" > actualState< / a > . In other words, < span data-unresolved-link = "kotlinx.coroutines/Job///PointingToDeclaration/" > Job< / span > of < a href = "perform-state-update.html" > previousState< / a > WILL NOT be replaced with the new one if they are " equal" . Equality of states is solved in < span data-unresolved-link = "dev.inmo.micro_utils.fsm.common/DefaultUpdatableStatesMachine/shouldReplaceJob/#dev.inmo.micro_utils.common.Optional[TypeParam(bounds=[dev.inmo.micro_utils.fsm.common.State])]#TypeParam(bounds=[dev.inmo.micro_utils.fsm.common.State])/PointingToDeclaration/" > shouldReplaceJob< / span > and can be rewritten in subclasses< / p > < / div > < / div > < / div >
< / div >
2022-12-05 01:56:48 +00:00
< / div >
< / div >
< / div >
< a data-name = "180131764%2FFunctions%2F-1478683138" anchor-label = "start" id = "180131764%2FFunctions%2F-1478683138" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" > < / a >
2023-03-10 16:40:23 +00:00
< div class = "table-row" data-filterable-current = ":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" >
< div class = "main-subrow keyValue " >
< div class = "" > < span class = "inline-flex" >
< div > < a href = "../-default-states-machine/start.html" > < span > < span > start< / span > < / span > < / a > < / div >
2022-12-05 01:56:48 +00:00
< span class = "anchor-wrapper" > < span class = "anchor-icon" pointing-to = "180131764%2FFunctions%2F-1478683138" > < / span >
2023-03-10 16:40:23 +00:00
< div class = "copy-popup-wrapper " > < span class = "copy-popup-icon" > < / span > < span > Link copied to clipboard< / span > < / div >
< / span > < / span > < / div >
< div >
< div class = "title" >
< div class = "platform-hinted " data-platform-hinted = "data-platform-hinted" > < div class = "content sourceset-dependent-content" data-active = "" data-togglable = ":micro_utils.dokka:dokkaHtml/commonMain" > < div class = "symbol monospace" > < span class = "token keyword" > open < / span > < span class = "token keyword" > override < / span > < span class = "token keyword" > fun < / span > < a href = "../-default-states-machine/start.html" > < span class = "token function" > start< / span > < / a > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > scope< span class = "token operator" > : < / span > < span data-unresolved-link = "kotlinx.coroutines/CoroutineScope///PointingToDeclaration/" > CoroutineScope< / span > < / span > < / span > < span class = "token punctuation" > )< / span > < span class = "token operator" > : < / span > < span data-unresolved-link = "kotlinx.coroutines/Job///PointingToDeclaration/" > Job< / span > < / div > < div class = "brief " > < p class = "paragraph" > Launch handling of states. On < a href = "../-states-manager/on-start-chain.html" > statesManager< / a > , < a href = "../-states-manager/on-chain-state-updated.html" > statesManager< / a > will be called lambda with performing of state. If < a href = "../-default-states-machine/launch-state-handling.html" > launchStateHandling< / a > will returns some < a href = "../-state/index.html" > State< / a > then < a href = "../-states-manager/update.html" > statesManager< / a > will be used, otherwise < a href = "../-states-manager/end-chain.html" > StatesManager.endChain< / a > .< / p > < / div > < / div > < / div >
< / div >
2022-12-05 01:56:48 +00:00
< / div >
< / div >
< / div >
< a data-name = "704297849%2FFunctions%2F-1478683138" anchor-label = "startChain" id = "704297849%2FFunctions%2F-1478683138" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" > < / a >
2023-03-10 16:40:23 +00:00
< div class = "table-row" data-filterable-current = ":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" >
< div class = "main-subrow keyValue " >
< div class = "" > < span class = "inline-flex" >
< div > < a href = "../-default-states-machine/start-chain.html" > < span > start< / span > < wbr > < / wbr > < span > < span > Chain< / span > < / span > < / a > < / div >
2022-12-05 01:56:48 +00:00
< span class = "anchor-wrapper" > < span class = "anchor-icon" pointing-to = "704297849%2FFunctions%2F-1478683138" > < / span >
2023-03-10 16:40:23 +00:00
< div class = "copy-popup-wrapper " > < span class = "copy-popup-icon" > < / span > < span > Link copied to clipboard< / span > < / div >
< / span > < / span > < / div >
< div >
< div class = "title" >
< div class = "platform-hinted " data-platform-hinted = "data-platform-hinted" > < div class = "content sourceset-dependent-content" data-active = "" data-togglable = ":micro_utils.dokka:dokkaHtml/commonMain" > < div class = "symbol monospace" > < span class = "token keyword" > open < / span > < span class = "token keyword" > suspend override < / span > < span class = "token keyword" > fun < / span > < a href = "../-default-states-machine/start-chain.html" > < span class = "token function" > startChain< / span > < / a > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > state< span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < / span > < / span > < span class = "token punctuation" > )< / span > < / div > < div class = "brief " > < p class = "paragraph" > Just calls < a href = "../-states-manager/start-chain.html" > StatesManager.startChain< / a > of < span data-unresolved-link = "dev.inmo.micro_utils.fsm.common/DefaultStatesMachine/statesManager/#/PointingToDeclaration/" > statesManager< / span > < / p > < / div > < / div > < / div >
< / div >
2022-12-05 01:56:48 +00:00
< / div >
< / div >
< / div >
< a data-name = "1443712933%2FFunctions%2F-1478683138" anchor-label = "updateChain" id = "1443712933%2FFunctions%2F-1478683138" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" > < / a >
2023-03-10 16:40:23 +00:00
< div class = "table-row" data-filterable-current = ":micro_utils.dokka:dokkaHtml/commonMain" data-filterable-set = ":micro_utils.dokka:dokkaHtml/commonMain" >
< div class = "main-subrow keyValue " >
< div class = "" > < span class = "inline-flex" >
< div > < a href = "update-chain.html" > < span > update< / span > < wbr > < / wbr > < span > < span > Chain< / span > < / span > < / a > < / div >
2022-12-05 01:56:48 +00:00
< span class = "anchor-wrapper" > < span class = "anchor-icon" pointing-to = "1443712933%2FFunctions%2F-1478683138" > < / span >
2023-03-10 16:40:23 +00:00
< div class = "copy-popup-wrapper " > < span class = "copy-popup-icon" > < / span > < span > Link copied to clipboard< / span > < / div >
< / span > < / span > < / div >
< div >
< div class = "title" >
< div class = "platform-hinted " data-platform-hinted = "data-platform-hinted" > < div class = "content sourceset-dependent-content" data-active = "" data-togglable = ":micro_utils.dokka:dokkaHtml/commonMain" > < div class = "symbol monospace" > < span class = "token keyword" > open < / span > < span class = "token keyword" > suspend override < / span > < span class = "token keyword" > fun < / span > < a href = "update-chain.html" > < span class = "token function" > updateChain< / span > < / a > < span class = "token punctuation" > (< / span > < span class = "parameters " > < span class = "parameter " > currentState< span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < span class = "token punctuation" > , < / span > < / span > < span class = "parameter " > newState< span class = "token operator" > : < / span > < a href = "index.html" > T< / a > < / span > < / span > < span class = "token punctuation" > )< / span > < / div > < div class = "brief " > < p class = "paragraph" > Update chain with current state equal to < a href = "update-chain.html" > currentState< / a > with < a href = "update-chain.html" > newState< / a > . Behaviour of this update preforming in cases when < a href = "update-chain.html" > currentState< / a > does not exist in < a href = "../-states-manager/index.html" > StatesManager< / a > must be declared inside of realization of < a href = "../-states-manager/update.html" > StatesManager.update< / a > function< / p > < / div > < / div > < / div >
< / div >
2022-12-05 01:56:48 +00:00
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
< div class = "footer" >
2023-01-04 14:31:55 +00:00
< span class = "go-to-top-icon" > < a href = "#content" id = "go-to-top-link" > < / a > < / span > < span > © 2023 Copyright< / span > < span
2022-12-05 01:56:48 +00:00
class="pull-right">< span > Generated by < / span > < a
href="https://github.com/Kotlin/dokka">< span > dokka< / span > < span class = "padded-icon" > < / span > < / a > < / span >
< / div >
< / div >
< / div >
< / body >
< / html >