Commit Graph

  • c3d0a6f262 Make most AST node primitives working on anonymous access types Pierre-Marie de Rodat 2016-05-10 15:08:27 +02:00
  • 035ba7d32b Python API: fix string memory leak for Token.kind Pierre-Marie de Rodat 2016-05-09 18:35:07 +02:00
  • e51da3612c Python API: make it possible to iterate backwards over tokens Pierre-Marie de Rodat 2016-05-09 10:40:39 +02:00
  • 8a4907955c Python API: make it possible to compare tokens for equality Pierre-Marie de Rodat 2016-05-09 10:40:16 +02:00
  • 6336936e12 Bind the backwards token iteration in the C API Pierre-Marie de Rodat 2016-05-09 10:30:41 +02:00
  • b506961c94 C API: initialize token+trivia index even for No_Token Pierre-Marie de Rodat 2016-05-09 10:29:02 +02:00
  • aa52397853 Make it possible to iterate backwards over tokens in the Ada API Pierre-Marie de Rodat 2016-05-09 09:14:42 +02:00
  • c1e1a59259 Expressions: make unsugar handle all user-provided expressions Pierre-Marie de Rodat 2016-05-09 08:00:16 +02:00
  • ba83a215c7 Expressions: fix a minor typo in type annotation Pierre-Marie de Rodat 2016-05-09 07:48:13 +02:00
  • 4258b7804d Turn Langkit_Support.Token_Data_Handler into a generic package Pierre-Marie de Rodat 2016-05-06 16:00:30 +02:00
  • 432c63a7ee Langkit_Support: remove the dependency of Packrat on Token_Data_Handler Pierre-Marie de Rodat 2016-05-06 15:20:38 +02:00
  • 118534e7fd Rename the AST node kind enumeration type in the Ada API Pierre-Marie de Rodat 2016-05-06 15:10:42 +02:00
  • be86818051 Introduce AST node kind subranges for abstract classes Pierre-Marie de Rodat 2016-05-06 14:56:23 +02:00
  • e0b106ac9c Turn AST node kind into an enumeration type Pierre-Marie de Rodat 2016-05-06 14:30:36 +02:00
  • e2389819e6 Lexer: move token kind name implementation to package body Pierre-Marie de Rodat 2016-05-06 12:36:15 +02:00
  • a664e75b7f Lexer: remove redundant representation clause for token kind enum type Pierre-Marie de Rodat 2016-05-06 12:35:49 +02:00
  • 31ed56ab41 O413-018: Add test for invalid property literals Raphael Amiard 2016-05-06 18:02:16 +02:00
  • 56958fcae1 O413-018: Refactor dispatch_on_type to take exception instance Raphael Amiard 2016-05-06 17:53:35 +02:00
  • 8bf1d417e8 Minor reformating Raphael Amiard 2016-05-06 17:44:52 +02:00
  • 4d624bb03a O413-018: Enable python literal in toplevel Property's expression Raphael Amiard 2016-05-06 17:44:40 +02:00
  • c58fbf9914 O413-018: Refactor expressions.construct Raphael Amiard 2016-05-06 17:42:26 +02:00
  • b24b6bd641 O413-018: Implement logic.Predicate abstract expression Raphael Amiard 2016-05-06 14:45:26 +02:00
  • 9df2d5e43d O413-018: Add a docstring Raphael Amiard 2016-05-06 11:58:42 +02:00
  • d537c2be33 O413-018: Add validity checks in Bind.do_prepare Raphael Amiard 2016-05-04 11:38:41 +02:00
  • 24bc2c3db4 O413-018: Adalog.Predicates - Remove body of Predicate Raphael Amiard 2016-05-03 17:46:20 +02:00
  • f5779c10c5 O413-018: Adalog.Predicate takes an object rather than a function Raphael Amiard 2016-05-03 16:16:27 +02:00
  • 20f8726b56 Minor: Code reformat Raphael Amiard 2016-05-03 15:49:52 +02:00
  • 11fb41ad99 O413-018: Properties - Implement logic and/or operators Raphael Amiard 2016-05-03 15:42:44 +02:00
  • 8ae0f95378 O413-018: Add Logic_And and Logic_Or functions to Adalog. Raphael Amiard 2016-05-03 15:39:48 +02:00
  • f16add7873 Minor: Correct Domain.Expr.render_expr Raphael Amiard 2016-05-03 15:39:03 +02:00
  • 0e863ea0a3 O413-018: Implement logic.Bind abstract expression. Raphael Amiard 2016-05-03 13:07:14 +02:00
  • 49cd205aec Minor: Property emission, move abstract check to template Raphael Amiard 2016-05-03 12:24:31 +02:00
  • 5cacef78a6 Fix typographic issues in various outputs Pierre-Marie de Rodat 2016-05-04 16:13:45 +02:00
  • d956d352a5 compile_context: automatically create array type for EnvElement Pierre-Marie de Rodat 2016-05-04 15:51:46 +02:00
  • fa23cc0ceb Enhance the output of Token.__repr__ a bit in the generated library Pierre-Marie de Rodat 2016-05-04 15:26:03 +02:00
  • c93ef57172 Bind ASTNode.token_start and .token_end in the C and Python APIs Pierre-Marie de Rodat 2016-05-04 15:18:22 +02:00
  • 5479714f4c Remove compiled_types.decl_type Pierre-Marie de Rodat 2016-05-04 11:11:04 +02:00
  • f5679e509d Fix import style issues Pierre-Marie de Rodat 2016-05-04 15:28:38 +02:00
  • 31809e0039 P303-009: Add tests for invalid grammar rules Raphael Amiard 2016-05-02 13:32:19 +02:00
  • ef2a777cb7 Minor: Remove reset_langkit calls. Raphael Amiard 2016-05-02 13:27:38 +02:00
  • d9bb947e59 P303-009: New diagnostics in grammar declaration Raphael Amiard 2016-05-02 16:04:33 +02:00
  • e5f7edb558 P303-009: Add infra to Grammar to support diagnostics Raphael Amiard 2016-05-02 15:59:42 +02:00
  • 3fa53e9823 P303-009: include create_context in block handling Diagnostics Raphael Amiard 2016-05-02 15:23:41 +02:00
  • 5d0e7ae96a P303-009: Modify emit_and_print_errors API Raphael Amiard 2016-05-02 12:52:56 +02:00
  • ed8678d401 P429-013: Remove main_rule_name param in get_unref_rules Raphael Amiard 2016-04-29 18:13:29 +02:00
  • 390293b243 P429-013: Add error context to Grammar constructor Raphael Amiard 2016-04-29 18:12:21 +02:00
  • a66b724a88 Remove useless conversions in generated AST node field accessors Pierre-Marie de Rodat 2016-05-04 10:55:08 +02:00
  • 602d4a04a9 Move the AST.Get_Symbol function to the private section Pierre-Marie de Rodat 2016-05-04 10:49:21 +02:00
  • e00f4da30e Lexer: rename Interface_Token_Type into Quex_Token_Type Pierre-Marie de Rodat 2016-05-04 10:37:50 +02:00
  • 99783e9d21 Expose "with_trivia" in the C and Python APIs Pierre-Marie de Rodat 2016-05-03 13:16:15 +02:00
  • fe105be414 Make it possible to iterate over tokens+trivia in all APIs Pierre-Marie de Rodat 2016-05-02 16:28:52 +02:00
  • 38e8f9f7f0 Move several bindings from AST.Types.C to the new AST.C package Pierre-Marie de Rodat 2016-05-03 10:01:38 +02:00
  • e0f71e35ec Declare arrays of EnvElement in the AST package Pierre-Marie de Rodat 2016-05-03 09:38:57 +02:00
  • 47bde2d678 Rename Mako templates for the XXX.AST.Types.C generated Ada unit Pierre-Marie de Rodat 2016-05-02 18:31:45 +02:00
  • bf7a7a8143 Remove duplicate source code emission for Ada units in the C API Pierre-Marie de Rodat 2016-05-02 18:30:39 +02:00
  • 2b30e07739 Move the Token_Type constructor to the private part Pierre-Marie de Rodat 2016-05-02 17:15:41 +02:00
  • cb56f291d6 Remove the Index Token_Type primitive Pierre-Marie de Rodat 2016-05-02 16:45:17 +02:00
  • 1c8aa72347 Token_Data_Handler: improve comments for token and trivia vectors Pierre-Marie de Rodat 2016-05-02 15:58:12 +02:00
  • e09b0fba9d Simplify the Mako templates for the Ada part of the lexer Pierre-Marie de Rodat 2016-05-02 15:42:28 +02:00
  • 6b24c9be93 Bind token kind names in the C and Python APIs Pierre-Marie de Rodat 2016-05-02 13:36:05 +02:00
  • bdb2b1cae8 Add a temporary workaround for a compiler bug Pierre-Marie de Rodat 2016-05-02 13:36:47 +02:00
  • f555c97743 Lexer: rename Token_Text into Token_Kind_Name Pierre-Marie de Rodat 2016-05-02 12:41:42 +02:00
  • cd8ac32d7e Rework how tokens are bound in the C and Python APIs Pierre-Marie de Rodat 2016-04-29 18:24:26 +02:00
  • 57e60b639a lexer.Lexer: rename c_token_name into quex_token_name Pierre-Marie de Rodat 2016-04-29 17:38:11 +02:00
  • 6d6d318f05 Move the token kinds sorting logic to lexer.Lexer Pierre-Marie de Rodat 2016-04-29 17:32:51 +02:00
  • 3eabf0c31d Make AST nodes and Struct store Token_Index while exposing Token_Type Pierre-Marie de Rodat 2016-04-29 15:33:37 +02:00
  • 6cf852d262 Fix Mako templates to use stored types and API types when appropriate Pierre-Marie de Rodat 2016-04-29 15:15:40 +02:00
  • b7130651e6 Make it possible to dissociate stored types from public types in Structs Pierre-Marie de Rodat 2016-04-29 14:43:09 +02:00
  • 581b036aca Introduce proper public types for tokens in the Ada API Pierre-Marie de Rodat 2016-04-29 10:45:38 +02:00
  • 77e7682fb5 Fix a subprogram box in a lexer Mako template Pierre-Marie de Rodat 2016-04-29 10:45:38 +02:00
  • bb9d30c097 Rename Langkit_Support.Tokens into Langkit_Support.Slocs Pierre-Marie de Rodat 2016-04-28 17:55:17 +02:00
  • 5888363a54 Lexer: except in Langkit_Support, switch token kind to enumeration type Pierre-Marie de Rodat 2016-04-28 16:11:47 +02:00
  • ffc48573a6 lexer: sanitize token name processing Pierre-Marie de Rodat 2016-04-28 15:40:11 +02:00
  • b4e44f1c05 P429-013: Add test for wrong main rule detection Raphael Amiard 2016-04-29 15:23:36 +02:00
  • 05a909b966 P429-013: Enhance behavior in case of wrong main rule Raphael Amiard 2016-04-29 15:23:18 +02:00
  • 67a5a6458c P429-013: Refactor main rule name selection Raphael Amiard 2016-04-29 15:07:27 +02:00
  • a25d485f13 P226-036: Handle corner case in env printing Raphael Amiard 2016-04-29 12:53:35 +02:00
  • dc20f5ee62 expressions.boolean.Then: make EmptyEnv default val for LexicalEnvType Pierre-Marie de Rodat 2016-04-26 16:37:13 +02:00
  • ab8625c6fb Add a testcase for the no-op cast expression warning Pierre-Marie de Rodat 2016-04-26 15:32:04 +02:00
  • ce81bddb7f expressions.structs.Cast: warn if input expr. already has dest. type Pierre-Marie de Rodat 2016-04-26 15:31:18 +02:00
  • e37f3b6cef Adjust the Parents property to comply to its documentation Pierre-Marie de Rodat 2016-04-26 15:04:15 +02:00
  • bbcdd26b9e Fix how the token sloc range C getter is bound in the Python API Pierre-Marie de Rodat 2016-04-21 15:49:58 +02:00
  • 91b80b4603 expressions.structs.FieldAccess: update comment about simple fld access Pierre-Marie de Rodat 2016-04-25 18:03:36 +02:00
  • e322b594c1 expressions.base: rename "orphan" into "env_orphan" Pierre-Marie de Rodat 2016-04-25 18:01:52 +02:00
  • 6d6f56114a Move the list of PropertyDef compilation passes to the PropertyDef class Pierre-Marie de Rodat 2016-04-25 11:42:42 +02:00
  • 538f94a5d8 Distribute adalang in the Python package Pierre-Marie de Rodat 2016-04-24 10:56:11 +02:00
  • c88e587541 Move "adalog" into "langkit/" Pierre-Marie de Rodat 2016-04-24 10:53:47 +02:00
  • 9b3a2f33c7 compile_context: automatically detect Quex if QUEX_PATH is not defined Pierre-Marie de Rodat 2016-04-24 10:45:12 +02:00
  • 1d335d0fcb expressions.base.PropertyDef.render_property: minor refactoring Pierre-Marie de Rodat 2016-04-25 11:29:48 +02:00
  • 1097e2a7a5 libmanage.ManageScript: add an "env" parameter to check_call Pierre-Marie de Rodat 2016-04-22 17:54:27 +02:00
  • af9359ccfa Langkit_Support.Lexical_Env: fix an algorithmic error Group Pierre-Marie de Rodat 2016-04-22 15:53:39 +02:00
  • 5171339ef8 Properties: make it possible to group multiple envs values Pierre-Marie de Rodat 2016-04-22 15:52:57 +02:00
  • fe4d1249d1 Fix PyCharm diagnostics Pierre-Marie de Rodat 2016-04-22 13:36:25 +02:00
  • 3935c62441 Rename EnvGroup into EnvGroupArray Pierre-Marie de Rodat 2016-04-22 13:11:11 +02:00
  • 85eaf27433 libmanage.py: use IPython's debugger instead of PDB if available Pierre-Marie de Rodat 2016-04-22 12:41:19 +02:00
  • a017b13e21 expressions.structs.FieldAccess: update comment about simple fld access Pierre-Marie de Rodat 2016-04-21 17:50:01 +02:00
  • c3cf8514c7 expressions.structs.FieldAccess: rename property into node_data Pierre-Marie de Rodat 2016-04-21 17:44:34 +02:00
  • b5a10a3135 Add lexical env group operation in the properties DSL Pierre-Marie de Rodat 2016-04-21 17:01:15 +02:00
  • c21ac71b46 Create a Lexical_Env subtype in the AST package Pierre-Marie de Rodat 2016-04-21 16:59:28 +02:00
  • 37d5805796 Introduce a proper mechanism for array type definitions in the AST pack. Pierre-Marie de Rodat 2016-04-21 16:50:12 +02:00