Commit graph

102 commits

Author SHA1 Message Date
Alexander Zakharenko 21301a8fb4 Fix #872 2018-06-17 14:21:52 +03:00
Voloshin Bogdan e9e4bcb6a7 Add error for incorrect instance implementation 2018-06-11 02:08:57 +03:00
Voloshin Bogdan eb4f90edf2 Merge branch 'master' into features/typeclasses-another-approach
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2018-06-04 17:40:25 +03:00
Бондарев Иван a2c16c54cb bug fix #887
bug fix #888
2018-06-03 12:46:06 +02:00
Voloshin Bogdan 9c416f3855 Add deducing template type for not inherited typeclasses 2018-05-25 00:39:18 +03:00
Bogdan Voloshin 32b86ece99 Merge branch 'master' into features/typeclasses-another-approach
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2018-05-24 14:35:47 +03:00
Alexander Zakharenko 0b6f46ff4c Omit type in recursive patterns 2018-05-23 17:56:19 +03:00
Alexander Zakharenko 28fedb6773 Fix pattern success variable not being initialized 2018-05-23 10:55:33 +03:00
Voloshin Bogdan 1f53dad67f Add operators to typeclasses 2018-05-22 21:13:56 +03:00
Voloshin Bogdan e55242a9ef Add search at methods at typeclasses for restricted functions 2018-05-21 04:14:18 +03:00
Voloshin Bogdan 0fd509f669 Merge branch 'master' into features/typeclasses-another-approach
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
#	SyntaxTree/tree/SyntaxTreeStreamWriter.cs
#	SyntaxTree/tree/tree.xml
2018-05-19 00:21:42 +03:00
Alexander Zakharenko 56ce22d921 Temporary removed caching (doesn't work in certain cases, i.e. foreach) 2018-05-18 21:25:37 +03:00
Alexander Zakharenko dd90bee60e Add tests & semantic checks 2018-05-18 18:18:38 +03:00
Alexander Zakharenko ac5dff7717 Formatting patterns, and caching matching expression 2018-05-17 23:49:50 +03:00
Alexander Zakharenko 038d6fe839 Fix patterns not working with yields 2018-05-17 22:49:07 +03:00
Alexander Zakharenko 5486f6b6ea Fix label placement 2018-05-17 15:20:16 +03:00
Alexander Zakharenko cff9324ce6 Desugar match-with statement into series of is-expression checks 2018-05-17 02:07:10 +03:00
Alexander Zakharenko c524f083dd Visit else body 2018-05-17 02:03:53 +03:00
Alexander Zakharenko b8e8b237b8 Working recursive patterns 2018-05-17 00:01:52 +03:00
Alexander Zakharenko 97078b0bc3 Working prototype of 'is' in if and assignments 2018-05-16 16:16:42 +03:00
Alexander Zakharenko 174613056f First 'is' prototype 2018-05-16 00:26:07 +03:00
Alexander Zakharenko 556b4bb3c5 Save additional info for desugaring 2018-05-15 17:55:57 +03:00
Bogdan Voloshin a315f9f063 Merge commit '082a998786a49e4e3f3ce0ad799fe1c7b6a90fb7' into features/typeclasses-another-approach
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.lex
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.y
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
#	SyntaxTree/tree/AbstractVisitor.cs
#	SyntaxTree/tree/HierarchyVisitor.cs
#	SyntaxTree/tree/SyntaxTreeStreamReader.cs
#	SyntaxTree/tree/SyntaxTreeStreamWriter.cs
#	SyntaxTree/tree/Tree.cs
#	SyntaxTree/tree/Visitor.cs
#	SyntaxTree/tree/tree.xml
#	TestSuite/CompilationSamples/PABCSystem.pas
#	bin/Lib/PABCSystem.pas
2018-05-14 18:01:14 +03:00
Voloshin Bogdan 950ca1c711 Add typeclass deriving translation 2018-05-14 06:37:23 +03:00
Alexander Zakharenko cc21d473f1 Recursive patterns - resugaring example 2018-05-13 20:49:08 +03:00
Alexander Zakharenko d257bbd52f Add else case and tests 2018-05-11 19:26:55 +03:00
Alexander Zakharenko a078dac5eb Merge branch 'master' into features/patterns
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
#	TestSuite/CompilationSamples/PABCSystem.pas
#	bin/Lib/PABCSystem.pas
2018-05-11 13:58:19 +03:00
Alexander Zakharenko ec44408a75 Code formatting for match with pattern 2018-05-11 13:46:59 +03:00
Alexander Zakharenko 9d3fd3e5aa Implement deconstruction, simple case 2018-05-06 20:09:36 +03:00
Voloshin Bogdan 3c00e075e7 Merge branch 'master' into features/typeclasses-another-approach 2018-05-02 13:04:01 +03:00
Alexander Zakharenko 17cb96a479 Refactor nodes 2018-05-01 19:51:24 +03:00
Alexander Zakharenko 5aff52feeb Add deconstruct pattern to grammar 2018-05-01 19:29:39 +03:00
Бондарев Иван c6aecfef3b bug fix #780 2018-05-01 13:32:27 +02:00
Bogdan Voloshin e26cdc9c15 Add to examples Eq, Show and Read typeclasses 2018-04-26 19:29:58 +03:00
Bogdan Voloshin c0bdc307e1 Add method call translation 2018-04-25 19:54:24 +03:00
Bogdan Voloshin c0eb1de16c Add proj file update 2018-04-24 19:51:28 +03:00
Bogdan Voloshin 2a7c88a902 Add utility visitors for translation of restricted method call 2018-04-24 19:50:23 +03:00
Voloshin Bogdan efa25e3c61 Minor fixes 2018-04-20 12:03:38 +03:00
Voloshin Bogdan 238b2ed91e Fix typeclass template name substitution at procedure/function body translation 2018-04-20 11:35:37 +03:00
Voloshin Bogdan 8099578056 Implemet procedure body translation 2018-04-20 10:40:55 +03:00
Voloshin Bogdan 88cbcb5b4d Merge branch 'master' into features/typeclasses-another-approach 2018-04-20 05:19:39 +03:00
Бондарев Иван 3e1d264cbd bug fix #778 2018-04-19 20:11:51 +02:00
Bogdan Voloshin 10acad0a19 Implement constrained function/procedure header translation 2018-04-19 17:50:09 +03:00
Bogdan Voloshin 15b6cba732 Start implementation constraint procedures/functions 2018-04-18 20:12:12 +03:00
Bogdan Voloshin f4bc14e035 Add instance declaration translation 2018-04-17 19:07:59 +03:00
Bogdan Voloshin 9e9890b4ab Add typeclass declaration translation 2018-04-13 18:25:29 +03:00
Voloshin Bogdan b8eeb50ab0 Add syntax visitor for typeclass translation 2018-04-12 10:44:07 +03:00
Alexander Zakharenko 3f93bfa24b Merge 'master' into 'features/patterns' 2018-04-08 13:42:32 +03:00
miks1965 b5892cb1db bug fix #635
Release 3.3.0.1611
2018-01-06 14:02:18 +03:00
Бондарев Иван 12c97a26ab copyright 2005-2018 2018-01-01 13:14:03 +01:00