Lines Matching +defs:current +defs:column

74 file_block_read (struct file_data *current, size_t size)
76 if (size && ! current->eof)
78 size_t s = block_read (current->desc,
79 FILE_BUFFER (current) + current->buffered, size);
81 pfatal_with_name (current->name);
82 current->buffered += s;
83 current->eof = s < size;
95 /* Get ready to read the current file.
100 sip (struct file_data *current, bool skip_test)
103 if (current->desc < 0)
106 current->bufsize = sizeof (word);
107 current->buffer = xmalloc (current->bufsize);
111 current->bufsize = buffer_lcm (sizeof (word),
112 STAT_BLOCKSIZE (current->stat),
114 current->buffer = xmalloc (current->bufsize);
120 bool was_binary = set_binary_mode (current->desc, true);
122 file_block_read (current, current->bufsize);
123 buffered = current->buffered;
132 if (lseek (current->desc, - buffered, SEEK_CUR) == -1)
133 pfatal_with_name (current->name);
134 set_binary_mode (current->desc, false);
135 current->buffered = 0;
136 current->eof = false;
139 return binary_file_p (current->buffer, buffered);
143 current->buffered = 0;
144 current->eof = false;
148 /* Slurp the rest of the current file completely into memory. */
151 slurp (struct file_data *current)
155 if (current->desc < 0)
161 if (S_ISREG (current->stat.st_mode))
168 size_t file_size = current->stat.st_size;
170 if (file_size != current->stat.st_size || cc < file_size
174 if (current->bufsize < cc)
176 current->bufsize = cc;
177 current->buffer = xrealloc (current->buffer, cc);
184 if (current->buffered <= file_size)
186 file_block_read (current, file_size + 1 - current->buffered);
187 if (current->buffered <= file_size)
195 file_block_read (current, current->bufsize - current->buffered);
197 if (current->buffered)
199 while (current->buffered == current->bufsize)
201 if (PTRDIFF_MAX / 2 - sizeof (word) < current->bufsize)
203 current->bufsize *= 2;
204 current->buffer = xrealloc (current->buffer, current->bufsize);
205 file_block_read (current, current->bufsize - current->buffered);
210 cc = current->buffered + 2 * sizeof (word);
211 current->bufsize = cc - cc % sizeof (word);
212 current->buffer = xrealloc (current->buffer, current->bufsize);
221 find_and_hash_each_line (struct file_data *current)
224 char const *p = current->prefix_end;
230 char const **linbuf = current->linbuf;
231 lin alloc_lines = current->alloc_lines;
233 lin linbuf_base = current->linbuf_base;
238 char const *suffix_begin = current->suffix_begin;
239 char const *bufend = FILE_BUFFER (current) + current->buffered;
281 size_t column = 0;
289 column -= 0 < column;
294 repetitions = tabsize - column % tabsize;
295 column = (column + repetitions < column
297 : column + repetitions);
301 column = 0;
306 column++;
351 size_t column = 0;
359 column -= 0 < column;
364 repetitions = tabsize - column % tabsize;
365 column = (column + repetitions < column
367 : column + repetitions);
371 column = 0;
375 column++;
398 && current->missing_newline
473 current->buffered_lines = line;
508 current->linbuf = linbuf;
509 current->valid_lines = line;
510 current->alloc_lines = alloc_lines;
511 current->equivs = cureqs;
524 prepare_text (struct file_data *current)
526 size_t buffered = current->buffered;
527 char *p = FILE_BUFFER (current);
531 current->missing_newline = false;
535 current->missing_newline = true;
556 current->buffered = buffered;