mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 09:26:05 +00:00 
			
		
		
		
	Move struct options into options.c.
This commit is contained in:
		
							
								
								
									
										28
									
								
								options.c
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								options.c
									
									
									
									
									
								
							@@ -29,6 +29,13 @@
 | 
			
		||||
 * a red-black tree.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
struct options {
 | 
			
		||||
	RB_HEAD(options_tree, options_entry) tree;
 | 
			
		||||
	struct options	*parent;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
int	options_cmp(struct options_entry *, struct options_entry *);
 | 
			
		||||
RB_PROTOTYPE(options_tree, options_entry, entry, options_cmp);
 | 
			
		||||
RB_GENERATE(options_tree, options_entry, entry, options_cmp);
 | 
			
		||||
 | 
			
		||||
int
 | 
			
		||||
@@ -37,11 +44,15 @@ options_cmp(struct options_entry *o1, struct options_entry *o2)
 | 
			
		||||
	return (strcmp(o1->name, o2->name));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
options_init(struct options *oo, struct options *parent)
 | 
			
		||||
struct options *
 | 
			
		||||
options_create(struct options *parent)
 | 
			
		||||
{
 | 
			
		||||
	struct options *oo;
 | 
			
		||||
 | 
			
		||||
	oo = xcalloc(1, sizeof *oo);
 | 
			
		||||
	RB_INIT(&oo->tree);
 | 
			
		||||
	oo->parent = parent;
 | 
			
		||||
	return (oo);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
@@ -57,6 +68,19 @@ options_free(struct options *oo)
 | 
			
		||||
			free(o->str);
 | 
			
		||||
		free(o);
 | 
			
		||||
	}
 | 
			
		||||
	free(oo);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
struct options_entry *
 | 
			
		||||
options_first(struct options *oo)
 | 
			
		||||
{
 | 
			
		||||
	return (RB_MIN(options_tree, &oo->tree));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
struct options_entry *
 | 
			
		||||
options_next(struct options_entry *o)
 | 
			
		||||
{
 | 
			
		||||
	return (RB_NEXT(options_tree, &oo->tree, o));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
struct options_entry *
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user