Skip to content

JAChapmanII/c_map

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

c_map is a string -> string map implementation in C using AVL trees as the
backing store.

NOTE: this is missing a lot of relavent commits. If I had it to do over again,
I would have kept the changes to this structure here so it wouldn't be a
complete piece of crap. It evolved a lot in jbotc, the first IRC bot it was
in. Then when it got moved over to quincy, it matured even more and got
horribly hacky templates. At some point I may create a repository that has
this one's history, then the relavent history from jbotc, and then the
relavent history from quincy. Until then, if you want any good view of the
evolution you'll have to look across several repositories.

There was an idea to use macro's to create maps of any type. I really didn't
like that method, as it looked ugly to me. Since I was bored, I added a shell
script that substitutes various things in map.{h,c} to create a new map
structure with different types.
	vmap: string -> string
	ismap: integer -> string
	simap: string -> integer

Building:
	make

Running:
	There is not a whole lot to run ;) There is a test of the map iterator,
	however. You can run that as:
		./mittest

Using:
	Once you've built the maps, the .h files should have some fairly good
	instructions on how to use the functions and what they do. If not, please
	poke me and I'll try to fix it.

Extending:
	Look at one of the sets of .{dec,def,imp} files to see how the mstruct
	system works. I will make documentation for this if anyone is interested
	but can't figure it out themselves.

About

Various AVL tree backed maps written in C [with horribly hacky shell-script templates]

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors