Skip to content
This repository has been archived by the owner on Jun 22, 2021. It is now read-only.
/ ntl Public archive

Very tiny and selective implementation of STL for Windows NT kernel mode drivers

License

Notifications You must be signed in to change notification settings

RIscRIpt/ntl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Abandoned

Abandoned in favor of directly using STL in WDM drivers.

See wdmcpp Visual Studio project example.

ntl

ntl is very tiny and selective implementation of C++ Standard Library (which is sometimes mistakenly called STL) for Windows NT kernel mode drivers.

The name comes from combining NT and STL.

Tests

Tests are done in user-mode using Microsoft's VisualStudio C++ Unit Test Framework.

Implemented functionality

Comparison operations

  • equal;
  • lexicographical_compare;

Classes

Helper classes
  • integral_constant;
  • bool_constant;
  • true_type;
  • false_type;
Primary type categories
  • is_class (as is_union is not implemented, it doesn't detect unions);
  • is_pointer;
  • is_lvalue_reference(_v);
Const-volatility specifiers
  • remove_const(_t);
  • remove_volatile(_t);
  • remove_cv(_t);
Type relationships
  • is_same(_v);
  • is_base_of(_v);
References
  • remove_reference(_t);
  • add_lvalue_reference(_t);
  • add_rvalue_reference(_t);
Miscellaneous transformations
  • enable_if(_t);
  • conditional(_t);
  • void_t;

Functions

  • swap;
  • forward;
  • move;

Member functions

  • (constructor);
  • (destructor);
  • operator=;
  • assign;
Element access
  • at;
  • operator[];
  • front;
  • back;
  • data;
Iterators
  • begin / cbegin;
  • end / cend;
  • rbegin / crbegin;
  • rend / crend;
Capacity
  • empty;
  • size;
  • reserve;
  • capacity;
  • shrink_to_fit;
Modifiers
  • clear;
  • insert;
  • emplace;
  • erase;
  • push_back;
  • emplace_back;
  • pop_back;
  • resize;
  • swap;

Non-member functions

  • operator==;
  • operator!=;
  • operator<;
  • operator<=;
  • operator>;
  • operator>=;

About

Very tiny and selective implementation of STL for Windows NT kernel mode drivers

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published