source: git/factory/cf_iter.h @ 8fc3f6

spielwiese
Last change on this file since 8fc3f6 was f80ca1, checked in by Jens Schmidt <schmidt@…>, 26 years ago
* cf_iter.cc, cf_iter.h (operator++, coeff, hasTerms, exp): definitions moved to `cf_iter_inline.cc'. Declarations marked as `CF_INLINE' or `CF_NO_INLINE', resp. * cf_iter.h (CF_INLINE, CF_NO_INLINE): new #defines. `cf_iter_inline.cc' (conditionally) #included. git-svn-id: file:///usr/local/Singular/svn/trunk@2255 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 1.2 KB
Line 
1/* emacs edit mode for this file is -*- C++ -*- */
2/* $Id: cf_iter.h,v 1.4 1998-06-29 14:37:34 schmidt Exp $ */
3
4#ifndef INCL_CF_ITER_H
5#define INCL_CF_ITER_H
6
7#include <config.h>
8
9#include "canonicalform.h"
10
11/*BEGINPUBLIC*/
12
13#undef CF_INLINE
14#define CF_INLINE
15#undef CF_NO_INLINE
16#define CF_NO_INLINE
17
18/*ENDPUBLIC*/
19
20#ifdef CF_USE_INLINE
21#undef CF_INLINE
22#define CF_INLINE inline
23#else
24#undef CF_INLINE
25#define CF_INLINE
26#endif
27
28/*BEGINPUBLIC*/
29
30class term;
31typedef term * termList;
32
33class CFIterator {
34private:
35    CanonicalForm data;
36    termList cursor;
37    bool ispoly, hasterms;
38public:
39    CFIterator ();
40    CFIterator ( const CFIterator& );
41    CFIterator ( const CanonicalForm& );
42    CFIterator ( const CanonicalForm&, const Variable& );
43
44    ~CFIterator ();
45
46    CFIterator& operator= ( const CFIterator& );
47    CFIterator& operator= ( const CanonicalForm& );
48
49    CF_NO_INLINE CFIterator& operator++ ();
50    CF_NO_INLINE CFIterator& operator++ ( int );
51    CF_NO_INLINE int hasTerms () const;
52    CF_NO_INLINE CanonicalForm coeff () const;
53    CF_NO_INLINE int exp () const;
54};
55
56/*ENDPUBLIC*/
57
58#ifdef CF_USE_INLINE
59#include "cf_iter_inline.cc"
60#endif
61
62#endif /* ! INCL_CF_ITER_H */
Note: See TracBrowser for help on using the repository browser.