Esempio n. 1
0
	def dispatch_conditions (cls):
		condition = None
		if len (cls.__activated_conditions) > 0:
			condition = cls.__activated_conditions.pop ()
		while condition != None:
			if condition.handler != 0:
				code_line = CodeLine ()
				code_line.concept_id = condition.handler
				code_line.prev_line_id = -1
				code_line.priority = condition.priority
				CodeStack.push (code_line)
			condition = None
			if len (cls.__activated_conditions) > 0:
				condition = cls.__activated_conditions.pop ()
Esempio n. 2
0
 def dispatch_conditions(cls):
     condition = None
     if len(cls.__activated_conditions) > 0:
         condition = cls.__activated_conditions.pop()
     while condition != None:
         if condition.handler != 0:
             code_line = CodeLine()
             code_line.concept_id = condition.handler
             code_line.prev_line_id = -1
             code_line.priority = condition.priority
             CodeStack.push(code_line)
         condition = None
         if len(cls.__activated_conditions) > 0:
             condition = cls.__activated_conditions.pop()
Esempio n. 3
0
	def prepare_next_line (cls):
		if cls.__current_line < len (cls.__procedures[cls.__current_procedure]):
			CodeStack.push (cls.__procedures[cls.__current_procedure][cls.__current_line])
			cls.__current_line += 1
			return True
		else:
			if len (cls.__current_procedures) > 0:
				cls.__current_procedure = cls.__current_procedures.pop ()
			else:
				cls.__current_procedure = None
			if len (cls.__current_lines) > 0:
				cls.__current_line = cls.__current_lines.pop ()
			else:
				cls.__current_line = None
			if cls.__current_procedure == None:
				CodeStack.inside_procedure = False
			return False
Esempio n. 4
0
 def prepare_next_line(cls):
     if cls.__current_line < len(cls.__procedures[cls.__current_procedure]):
         CodeStack.push(
             cls.__procedures[cls.__current_procedure][cls.__current_line])
         cls.__current_line += 1
         return True
     else:
         if len(cls.__current_procedures) > 0:
             cls.__current_procedure = cls.__current_procedures.pop()
         else:
             cls.__current_procedure = None
         if len(cls.__current_lines) > 0:
             cls.__current_line = cls.__current_lines.pop()
         else:
             cls.__current_line = None
         if cls.__current_procedure == None:
             CodeStack.inside_procedure = False
         return False
Esempio n. 5
0
	def dispatch_triggers (cls):
		triggers = []
		trigger = None
		if len (cls.__activated_triggers) > 0:
			trigger = cls.__triggers[cls.__activated_triggers.pop ()]
		while trigger != None:
			#trigger.active = False
			if trigger.handler != "":
				triggers.append (trigger)
			trigger = None
			if len (cls.__activated_triggers) > 0:
				trigger = cls.__triggers[cls.__activated_triggers.pop ()]
		for trigger in triggers:
			code_line = CodeLine ()
			code_line.field_id = trigger.object_key
			code_line.concept_id = trigger.handler
			code_line.prev_line_id = -1
			code_line.priority = trigger.priority
			CodeStack.push (code_line)
Esempio n. 6
0
 def dispatch_triggers(cls):
     triggers = []
     trigger = None
     if len(cls.__activated_triggers) > 0:
         trigger = cls.__triggers[cls.__activated_triggers.pop()]
     while trigger != None:
         #trigger.active = False
         if trigger.handler != "":
             triggers.append(trigger)
         trigger = None
         if len(cls.__activated_triggers) > 0:
             trigger = cls.__triggers[cls.__activated_triggers.pop()]
     for trigger in triggers:
         code_line = CodeLine()
         code_line.field_id = trigger.object_key
         code_line.concept_id = trigger.handler
         code_line.prev_line_id = -1
         code_line.priority = trigger.priority
         CodeStack.push(code_line)