/external/bsd/kyua-cli/dist/utils/sqlite/statement.ipp

https://gitlab.com/storedmirrors/minix · C++ Header · 52 lines · 10 code · 6 blank · 36 comment · 0 complexity · e12db8fc1a4ca36c9be150a84b57bec8 MD5 · raw file

  1. // Copyright 2011 Google Inc.
  2. // All rights reserved.
  3. //
  4. // Redistribution and use in source and binary forms, with or without
  5. // modification, are permitted provided that the following conditions are
  6. // met:
  7. //
  8. // * Redistributions of source code must retain the above copyright
  9. // notice, this list of conditions and the following disclaimer.
  10. // * Redistributions in binary form must reproduce the above copyright
  11. // notice, this list of conditions and the following disclaimer in the
  12. // documentation and/or other materials provided with the distribution.
  13. // * Neither the name of Google Inc. nor the names of its contributors
  14. // may be used to endorse or promote products derived from this software
  15. // without specific prior written permission.
  16. //
  17. // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  18. // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  19. // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  20. // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  21. // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  22. // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  23. // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  24. // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  25. // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  26. // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  27. // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  28. #if !defined(UTILS_SQLITE_STATEMENT_IPP)
  29. #define UTILS_SQLITE_STATEMENT_IPP
  30. #include "utils/sqlite/statement.hpp"
  31. /// Binds a value to a parameter of a prepared statement.
  32. ///
  33. /// \param parameter The name of the parameter; must exist. This is a raw C
  34. /// string instead of a std::string because statement parameter names are
  35. /// known at compilation time and the program should really not be
  36. /// constructing them dynamically.
  37. /// \param value The value to bind to the parameter.
  38. ///
  39. /// \throw api_error If the binding fails.
  40. template< class T >
  41. void
  42. utils::sqlite::statement::bind(const char* parameter, const T& value)
  43. {
  44. bind(bind_parameter_index(parameter), value);
  45. }
  46. #endif // !defined(UTILS_SQLITE_STATEMENT_IPP)