+ [Arguments] ${stream} ${kw_name} @{varargs} &{kwargs}
+ BuiltIn.Run_Keyword_And_Return_If
+ ... ${Stream_dict}[${ODL_STREAM}] == ${Stream_dict}[${stream}]
+ ... ${kw_name}
+ ... @{varargs}
+ ... &{kwargs}
+
+Run_Keyword_If_Equals_Else
+ [Documentation] Compare ${stream} to ${ODL_STREAM} and in case ${ODL_STREAM} equals ${stream},
+ ... run keyword defined before ELSE statement otherwise run keyword defined after ELSE statement and return its value.
+ [Arguments] ${stream} @{varargs}
+ ${position} Collections.Get_Index_From_List ${varargs} \ELSE
+ IF "${position}" == "-1"
+ BuiltIn.Fail Missing else statement in defined expresion
+ END
+ ${varargs_if} Collections.Get_Slice_From_List ${varargs} 0 ${position}
+ ${varargs_else} Collections.Get_Slice_From_List ${varargs} ${position+1}
+ ${args_if} ${kwargs_if} CompareStream__Convert_Input @{varargs_if}
+ ${args_else} ${kwargs_else} CompareStream__Convert_Input @{varargs_else}
+ IF ${Stream_dict}[${ODL_STREAM}] == ${Stream_dict}[${stream}]
+ ${resp} BuiltIn.Run_Keyword @{args_if} &{kwargs_if}
+ ELSE
+ ${resp} BuiltIn.Run_Keyword @{args_else} &{kwargs_else}
+ END
+ RETURN ${resp}