[go: up one dir, main page]

File: fixed.h

package info (click to toggle)
findent 3.1.7-1
  • links: PTS
  • area: main
  • in suites: bullseye
  • size: 2,176 kB
  • sloc: sh: 4,746; cpp: 4,049; fortran: 1,565; pascal: 1,204; lex: 533; yacc: 305; makefile: 179; python: 155; lisp: 52
file content (36 lines) | stat: -rw-r--r-- 783 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#ifndef FIXED_H
#define FIXED_H

#include "fortran.h"

class Fixed : public Fortran
{
   public:
      Fixed(Findent *f) : Fortran(f) {}
      void build_statement(Fortranline &line, bool &f_more, bool &pushback);
      void output(lines_t &lines,lines_t *freelines = 0);
      void output_converted(lines_t &lines);

   private:
      bool wizard();
      bool wizard(lines_t lines);
      std::string add_amp(const std::string s,const char prevquote);

      std::string insert_omp(const std::string s)
      {
	 if(is_omp)
	 {
	    std::string sl = s;
	    sl = sl + blanks(ompstr.length() - sl.length());
	    return sl.replace(0,ompstr.length(),ompstr);
	 }
	 else
	    return s;
      }

      bool        is_omp;
      std::string ompstr;
      std::string cmpstr;
};

#endif