more skeleton
This commit is contained in:
parent
d48c0e0fa2
commit
f83643c926
2 changed files with 12 additions and 1 deletions
|
@ -16,6 +16,7 @@
|
||||||
| ')'
|
| ')'
|
||||||
| ','
|
| ','
|
||||||
| ';'
|
| ';'
|
||||||
|
| ':'
|
||||||
| '.'
|
| '.'
|
||||||
| '->'
|
| '->'
|
||||||
| '+'.
|
| '+'.
|
||||||
|
@ -34,6 +35,10 @@ tokenize(Text) -> tokenize(Text, 0, 1, akh_source_map:empty(), []).
|
||||||
) -> {ok, source_map(), [token()]}.
|
) -> {ok, source_map(), [token()]}.
|
||||||
tokenize([], _, _, SourceMap, Tokens) ->
|
tokenize([], _, _, SourceMap, Tokens) ->
|
||||||
{ok, SourceMap, Tokens};
|
{ok, SourceMap, Tokens};
|
||||||
|
tokenize([$( | T], Offset, Line, SourceMap, Tokens) ->
|
||||||
|
tokenize(T, Offset + 1, Line, SourceMap, [{'(', {Offset, 1}} | Tokens]);
|
||||||
|
tokenize([$) | T], Offset, Line, SourceMap, Tokens) ->
|
||||||
|
tokenize(T, Offset + 1, Line, SourceMap, [{')', {Offset, 1}} | Tokens]);
|
||||||
tokenize([$\n | T], Offset, Line, SourceMap, Tokens) ->
|
tokenize([$\n | T], Offset, Line, SourceMap, Tokens) ->
|
||||||
NewMap = akh_source_map:insert(Offset, Line, SourceMap),
|
NewMap = akh_source_map:insert(Offset, Line, SourceMap),
|
||||||
tokenize(T, Offset + 1, Line + 1, NewMap, Tokens);
|
tokenize(T, Offset + 1, Line + 1, NewMap, Tokens);
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
-module(akhamoth).
|
-module(akhamoth).
|
||||||
|
|
||||||
-export([]).
|
-export([compile/1]).
|
||||||
|
|
||||||
|
-spec compile(Path :: file:name_all()) -> any().
|
||||||
|
compile(Path) ->
|
||||||
|
{ok, SrcBin} = file:read_file(Path),
|
||||||
|
Src = unicode:characters_to_list(SrcBin),
|
||||||
|
akh_lexer:tokenize(Src).
|
||||||
|
|
Loading…
Add table
Reference in a new issue