Commit Graph

228 Commits

Author SHA1 Message Date
Axel Dörfler
ed3f63ae37 Added a call to move the contents of one list to another.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-12 21:34:20 +00:00
Axel Dörfler
3f7d503ff1 Fixed DoublyLinkedList::Iterator().
Switched back to a pointer to the list in the Iterator internally, so
that it can still be just copied without having to overload "=", etc.
This fixes the boot loader build, too (shame on me).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-10 00:49:52 +00:00
Axel Dörfler
03d14a728a kernel_cpp.h can now safely be included from C code, great, isn't it?
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-10 00:44:39 +00:00
Axel Dörfler
8e623d69b5 Made it a bit nicer to use.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6866 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-03 00:50:01 +00:00
Axel Dörfler
0fc073341c Renamed CHECK_USER_ADDRESS to IS_USER_ADDRESS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6675 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 02:18:32 +00:00
Tyler Dauwalder
581cfaf2c0 - Added declaration and definition of std::nothrow
- Wrapped everything but #includes in #if _KERNEL_MODE to keep from
  redeclaring/definining operator new and nothrow in userland.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-06 00:27:34 +00:00
Axel Dörfler
da69f27233 The iterator was broken.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-13 03:19:21 +00:00
Axel Dörfler
8174112d40 Almost straight copy of the list.h doubly linked list implementation to
a C++ one ready for kernel use, but very basic, too.
Has not been tested yet, expect some bug fixes soon.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-13 01:57:05 +00:00
Axel Dörfler
d172714dbd Lazy man's GCC 3 adaption.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-12 00:48:49 +00:00
Ingo Weinhold
eae4df8320 Fixed the usage of CHECK_USER_ADDRESS(). R5 has the inverse memory layout, so we need to adjust the KERNEL_BASE macro when compiling for it.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-29 18:50:02 +00:00
Ingo Weinhold
e0e5d17627 Handy functions to copy from and to userland reference parameters.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4837 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-28 15:12:27 +00:00
Tyler Dauwalder
c72c47f361 Switched from <Strategy> to <Value, Strategy = Auto> template paramter format.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-09 06:25:31 +00:00
Axel Dörfler
405a3fb126 Moved list.h to the util/ subfolder. (It currently still is in the kernel
private headers directory to not break the build.)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-09 02:09:33 +00:00
Axel Dörfler
e731e11702 Added the nothrow variants of the new operator.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-08 02:33:37 +00:00
Axel Dörfler
ccc316dc1c Our <new> lets delete throw __nothing - kernel_cpp.h now reflects this,
although I might change this issue after having had a look at the PPC
compilation.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-03 14:57:55 +00:00
Ingo Weinhold
83744ac99d Added the ImplicitKey entry strategy, which allows the key to be calculated on the fly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3802 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-02 03:17:43 +00:00
Ingo Weinhold
7e65f8eb29 Added a Vector based map implementation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3793 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 20:37:17 +00:00
Ingo Weinhold
92ec26a3be Fixed documentation and a minor issue.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3792 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-01 20:36:11 +00:00
Ingo Weinhold
bd3ed7497a Apparently invoking non-static member functions for default arguments doesn't work. Removed the default argument for Find() and added respective additional versions. Some more minor changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3754 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 01:00:23 +00:00
Ingo Weinhold
4489db253c Added a Vector based set implementation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-30 00:53:50 +00:00
Ingo Weinhold
eaf9864cde Added a generic Vector implementation.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 19:45:10 +00:00
Ingo Weinhold
c4de095cd1 Fixed invalid default argument. Not that the compiler eats the file now...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-29 19:44:14 +00:00
Ingo Weinhold
42b47c7c30 Some small interface fixes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 15:53:21 +00:00
Ingo Weinhold
e0f43e3e84 The beginning of an AVL tree based map implementation. Well, the tree part
is complete, the interface needs work.
Unfortunately our ancient compiler chokes on this (`Internal Compiler
Error'). I got around the problem by restructuring parts of the code once,
but now I'm stuck -- no idea what I could change. So, there won't be
AVLTree{Map,Set} until we have a working compiler. :-(


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-28 15:49:33 +00:00
Axel Dörfler
fb68886768 C++ for the kernel.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-27 22:58:58 +00:00
Tyler Dauwalder
d3a0e7c306 General object constructor class
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-23 05:56:09 +00:00
Tyler Dauwalder
ab608058b4 Allocator that uses malloc()/free()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-23 05:55:31 +00:00
Tyler Dauwalder
e9ebb4a961 Beginnings of the kernel utils library.
Templated singly linked list class (not quite complete).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-23 05:54:53 +00:00