eolian: function pointers
authorLauro Moura <lauromoura@expertisesolutions.com.br>
Fri, 7 Apr 2017 16:54:55 +0000 (13:54 -0300)
committerFelipe Magno de Almeida <felipe@expertisesolutions.com.br>
Sun, 18 Jun 2017 15:09:22 +0000 (12:09 -0300)
commit1634c141698499ea0fe735c5447c38488e8891ad
tree3edbc5ccec818f29242401e53259fdad579dd3d8
parent0fcee227aa9269b3767d6f6046d4b18389c0533d
eolian: function pointers

First steps toward explicit function pointer support in eolian.

To declare a function pointer type, use the following syntax, similar to
a regular eolian method declaration.

function FunctionName {
  params {
    ...
  }
  return: Return type
}
19 files changed:
src/bin/eolian/headers.c
src/bin/eolian/sources.c
src/bin/eolian/types.c
src/lib/eolian/Eolian.h
src/lib/eolian/database_function_api.c
src/lib/eolian/database_type_api.c
src/lib/eolian/database_validate.c
src/lib/eolian/eo_lexer.c
src/lib/eolian/eo_lexer.h
src/lib/eolian/eo_parser.c
src/lib/eolian/eolian_database.h
src/tests/eolian/data/function_as_argument.eo [new file with mode: 0644]
src/tests/eolian/data/function_as_argument_impl_ref.c [new file with mode: 0644]
src/tests/eolian/data/function_as_argument_ref.c [new file with mode: 0644]
src/tests/eolian/data/function_as_argument_ref.h [new file with mode: 0644]
src/tests/eolian/data/function_types.eot [new file with mode: 0644]
src/tests/eolian/data/function_types_ref.h [new file with mode: 0644]
src/tests/eolian/eolian_generation.c
src/tests/eolian/eolian_parsing.c