stlab.adobe.com Adobe Systems Incorporated
lex_stream.hpp
Go to the documentation of this file.
1 /*
2  Copyright 2005-2007 Adobe Systems Incorporated
3  Distributed under the MIT License (see accompanying file LICENSE_1_0_0.txt
4  or a copy at http://stlab.adobe.com/licenses.html)
5 */
6 
7 /*************************************************************************************************/
8 
9 #ifndef ADOBE_LEX_STREAM_HPP
10 #define ADOBE_LEX_STREAM_HPP
11 
12 /*************************************************************************************************/
13 
14 #include <adobe/config.hpp>
15 
17 #include <adobe/istream.hpp>
18 
19 #include <iosfwd>
20 
21 /*************************************************************************************************/
22 
24 
25 /*************************************************************************************************/
26 
27 namespace adobe {
28 
29 /*************************************************************************************************/
30 
32 {
33 public:
34  lex_stream_t(std::istream& in, const line_position_t& position);
35 
36 #if !defined(ADOBE_NO_DOCUMENTATION)
37  lex_stream_t(const lex_stream_t& rhs);
38 
39  ~lex_stream_t();
40 
41  lex_stream_t& operator = (const lex_stream_t& rhs);
42 #endif // !defined(ADOBE_NO_DOCUMENTATION)
43 
44  const stream_lex_token_t& get();
45 
46  void putback();
47 
49 
51 
52 #if !defined(ADOBE_NO_DOCUMENTATION)
53 private:
55 
56  struct implementation_t;
57 
58  implementation_t* object_m;
59 #endif // !defined(ADOBE_NO_DOCUMENTATION)
60 };
61 
62 /*************************************************************************************************/
63 
64 } // namespace adobe
65 
66 /*************************************************************************************************/
67 
69 {
70  std::swap(x.object_m, y.object_m);
71 }
72 
73 /*************************************************************************************************/
74 
75 #endif
76 
77 /*************************************************************************************************/
bool swap(circular_queue &x, circular_queue &y)
A type detailing parser position information.
Definition: istream.hpp:153
lex_stream_t(std::istream &in, const line_position_t &position)
void swap(adobe::lex_stream_t &, adobe::lex_stream_t &)
Definition: lex_stream.hpp:68
const line_position_t & next_position()
void set_keyword_extension_lookup(const keyword_extension_lookup_proc_t &proc)
void swap(circular_queue< T > &, circular_queue< T > &)

Copyright © 2006-2007 Adobe Systems Incorporated.

Use of this website signifies your agreement to the Terms of Use and Online Privacy Policy.

Search powered by Google