Ne.app NeANT
The Ne.app NeANT User module of the NeANT distribution.
Data Structures | Macros | Functions | Variables
25.merge.cpp File Reference
#include <algorithm>
#include <cstring>
#include <rw_alg_test.h>
#include <rw_value.h>
#include <rw_driver.h>
Include dependency graph for 25.merge.cpp:

Go to the source code of this file.

Data Structures

struct  Less< T >
 
struct  MergeBase
 
struct  Merge< InputIterator1, InputIterator2, OutputIterator >
 
struct  InplaceMerge< BidirectionalIterator >
 

Macros

#define TEST(src1, src2)    test_merge (__LINE__, src1, src2, 0, predicate, alg)
 
#define TEST(src, mid)    test_merge (__LINE__, src, "", mid, predicate, alg)
 

Functions

 _RWSTD_NAMESPACE (std)
 
void test_merge (int line, const char *src1, const char *src2, const std::size_t midinx, bool predicate, const MergeBase &alg)
 
void test_merge (const MergeBase &alg, bool predicate)
 
void test_inplace_merge (const MergeBase &alg, bool predicate)
 
template<class InputIterator1 , class InputIterator2 , class OutputIterator >
void gen_merge_test (const InputIterator1 &, const InputIterator2 &, const OutputIterator &, bool predicate)
 
template<class InputIterator1 , class InputIterator2 >
void gen_merge_test (const InputIterator1 &it1, const InputIterator2 &it2, bool predicate)
 
template<class InputIterator1 >
void gen_merge_test (const InputIterator1 &it1, bool predicate)
 
void gen_merge_test (bool predicate)
 
template<class BidirectionalIterator >
void gen_inplace_merge_test (const BidirectionalIterator &, bool predicate)
 
int main (int argc, char *argv[])
 

Variables

int rw_opt_no_merge
 
int rw_opt_no_inplace_merge
 
int rw_opt_no_predicate
 
int rw_opt_no_input_iter
 
int rw_opt_no_output_iter
 
int rw_opt_no_fwd_iter
 
int rw_opt_no_bidir_iter
 
int rw_opt_no_rnd_iter
 

Macro Definition Documentation

◆ TEST [1/2]

#define TEST (   src,
  mid 
)     test_merge (__LINE__, src, "", mid, predicate, alg)

◆ TEST [2/2]

#define TEST (   src1,
  src2 
)     test_merge (__LINE__, src1, src2, 0, predicate, alg)

Function Documentation

◆ _RWSTD_NAMESPACE()

_RWSTD_NAMESPACE ( std  )

25.merge.cpp - test exercising 25.3.4 [lib.alg.merge]

$Id$

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 1994-2006 Rogue Wave Software.

Definition at line 38 of file 25.merge.cpp.

◆ gen_inplace_merge_test()

template<class BidirectionalIterator >
void gen_inplace_merge_test ( const BidirectionalIterator &  ,
bool  predicate 
)

Definition at line 505 of file 25.merge.cpp.

◆ gen_merge_test() [1/4]

void gen_merge_test ( bool  predicate)

Definition at line 479 of file 25.merge.cpp.

◆ gen_merge_test() [2/4]

template<class InputIterator1 , class InputIterator2 , class OutputIterator >
void gen_merge_test ( const InputIterator1 &  ,
const InputIterator2 &  ,
const OutputIterator &  ,
bool  predicate 
)

Definition at line 437 of file 25.merge.cpp.

◆ gen_merge_test() [3/4]

template<class InputIterator1 >
void gen_merge_test ( const InputIterator1 &  it1,
bool  predicate 
)

Definition at line 464 of file 25.merge.cpp.

◆ gen_merge_test() [4/4]

template<class InputIterator1 , class InputIterator2 >
void gen_merge_test ( const InputIterator1 &  it1,
const InputIterator2 &  it2,
bool  predicate 
)

Definition at line 448 of file 25.merge.cpp.

◆ main()

int main ( int  argc,
char *  argv[] 
)

Definition at line 556 of file 25.merge.cpp.

◆ test_inplace_merge()

void test_inplace_merge ( const MergeBase &  alg,
bool  predicate 
)

Definition at line 375 of file 25.merge.cpp.

◆ test_merge() [1/2]

void test_merge ( const MergeBase &  alg,
bool  predicate 
)

Definition at line 301 of file 25.merge.cpp.

◆ test_merge() [2/2]

void test_merge ( int  line,
const char *  src1,
const char *  src2,
const std::size_t  midinx,
bool  predicate,
const MergeBase &  alg 
)

Definition at line 190 of file 25.merge.cpp.

Variable Documentation

◆ rw_opt_no_bidir_iter

int rw_opt_no_bidir_iter

Definition at line 431 of file 25.merge.cpp.

◆ rw_opt_no_fwd_iter

int rw_opt_no_fwd_iter

Definition at line 430 of file 25.merge.cpp.

◆ rw_opt_no_inplace_merge

int rw_opt_no_inplace_merge

Definition at line 426 of file 25.merge.cpp.

◆ rw_opt_no_input_iter

int rw_opt_no_input_iter

Definition at line 428 of file 25.merge.cpp.

◆ rw_opt_no_merge

int rw_opt_no_merge

Definition at line 425 of file 25.merge.cpp.

◆ rw_opt_no_output_iter

int rw_opt_no_output_iter

Definition at line 429 of file 25.merge.cpp.

◆ rw_opt_no_predicate

int rw_opt_no_predicate

Definition at line 427 of file 25.merge.cpp.

◆ rw_opt_no_rnd_iter

int rw_opt_no_rnd_iter

Definition at line 432 of file 25.merge.cpp.