aboutsummaryrefslogtreecommitdiff
path: root/matlab/+types/Reader.m
blob: c18ea54d28aa52e325f8490bdd03a3c05d5ae12f (plain)
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
classdef Reader < handle
    properties
        tokens
        position
    end
    methods
        function rdr = Reader(tokens)
            rdr.tokens = tokens;
            rdr.position = 1;
        end
        function tok = next(rdr)
            rdr.position = rdr.position + 1;
            if rdr.position-1 > length(rdr.tokens)
                tok = false;
            else
                tok = rdr.tokens{rdr.position-1};
            end
        end
        function tok = peek(rdr)
            if rdr.position > length(rdr.tokens)
                tok = false;
            else
                tok = rdr.tokens{rdr.position};
            end
        end
    end
end