28 lines
		
	
	
		
			628 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			628 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   {NodeType} *output = NULL;
 | |
|   if (!list) {{
 | |
|     goto RETURN_{Tupper}_LIST_REMOVE;
 | |
|   }}
 | |
| 
 | |
|   if (index == 0) {{
 | |
|     output = wapp_{Tlower}_list_pop_front(list);
 | |
|     goto RETURN_{Tupper}_LIST_REMOVE;
 | |
|   }} else if (index == list->node_count) {{
 | |
|     output = wapp_{Tlower}_list_pop_back(list);
 | |
|     goto RETURN_{Tupper}_LIST_REMOVE;
 | |
|   }}
 | |
| 
 | |
|   output = wapp_{Tlower}_list_get(list, index);
 | |
|   if (!output) {{
 | |
|     goto RETURN_{Tupper}_LIST_REMOVE;
 | |
|   }}
 | |
| 
 | |
|   output->prev->next = output->next;
 | |
|   output->next->prev = output->prev;
 | |
| 
 | |
|   --(list->node_count);
 | |
| 
 | |
|   output->prev = output->next = NULL;
 | |
| 
 | |
| RETURN_{Tupper}_LIST_REMOVE:
 | |
|   return output;
 |