Commit Graph
84 Commits
Author SHA1 Message Date
Ilya Puchka da6a0ccaca added some doc comments 2018-10-01 22:12:21 +01:00
Ilya Puchka dbb5e14e9f solve merge conflict issues 2018-10-01 21:59:03 +01:00
Ilya Puchka 0269052d6a Merge branch 'master' into dynamic-filter
# Conflicts:
#	CHANGELOG.md
#	Sources/ForTag.swift
#	Sources/IfTag.swift
#	Sources/Parser.swift
#	Sources/Variable.swift
#	Tests/StencilTests/ExpressionSpec.swift
#	Tests/StencilTests/FilterSpec.swift
#	Tests/StencilTests/ForNodeSpec.swift
#	Tests/StencilTests/VariableSpec.swift
2018-10-01 21:21:56 +01:00
Ilya Puchka fce3dc5e48 Added method to register boolean filters (#160)
* added method to register boolean filters

* parametrised negative filter name

* Update Extension.swift

* Update CHANGELOG.md

* renamed registerBooleanFilter to registerFilter

* updated docs
2018-09-25 23:29:21 +01:00
Ilya Puchka f7bda226e8 Update to Spectre 0.9.0 (#247)
* update to Spectre 0.9.0

* fix variable spec tests

* fix flatMap warning

* updated CHANGELOG
2018-09-23 03:46:27 +03:00
Ilya Puchka d238c25eef Allow using collection accessors on strings (#245)
* allow using collection accessors on strings

* refactored resolving collection accessors

* refactored to fileprivate function

* Update Variable.swift

* Update templates.rst
2018-09-22 16:41:45 +03:00
Ilya Puchka df2e193891 Allow conditions in variable node (#243)
* use condition in variable node

* added support for else expression

* addressing code review comments
2018-09-22 14:09:25 +03:00
Ilya Puchka 2c3962a3de Added support for brackets in boolean expressions (#165)
* added support for brackets in boolean expressions

* more descriptive error messages

* use array slices

* added test for nested expressions

* removed brackets validation step

* address code review comments

* added doc comment

* simplify expression spec

* fixed docs
2018-09-21 22:07:28 +03:00
Ilya Puchka 8210fa57f1 Update CHANGELOG.md 2018-09-11 18:14:51 +01:00
Ilya Puchka 0074ee1d4a check for property via selector before using value(forKey:) 2018-09-11 18:12:27 +01:00
Ilya Puchka acda1b0caf process template lines when Lexer is created not when parsing each token. (#230) 2018-09-10 11:39:19 +01:00
Ilya Puchka 96a004eb34 replace implicitly unwrapped optional with fatalError 2018-08-14 00:56:10 +01:00
Ilya Puchka 92ebfe59b1 removed unneeded error reporter references 2018-08-13 23:05:33 +01:00
Ilya Puchka 71ad162268 more indentations fixed 2018-08-13 20:02:07 +01:00
Ilya Puchka b9702afbd4 fixed indetnations 2018-08-13 20:00:27 +01:00
Ilya Puchka 4f1a5b3e3d store reference to token when parsing range variable 2018-08-12 22:25:25 +01:00
Ilya Puchka 3a4cd8aa27 Merge branch 'master' into errors-logs-improvements 2018-08-12 22:08:13 +01:00
Ilya Puchka e795f052ea updated docs 2018-08-04 20:19:50 +01:00
Ilya Puchka 2c411ca494 Merge branch 'master' into dynamic-filter 2018-08-04 20:05:59 +01:00
Ilya Puchka f3d5843e78 updated CHANGELOG 2018-08-04 19:49:57 +01:00
Ilya Puchka 564ccb7af7 added filter to apply dynamic filter 2018-05-13 12:46:51 +01:00
Ilya Puchka 39ed9aa753 Fixed using spaces in filter expressions and variables lists (#178)
* fixed using spaces in filter expression

* fixed breaking variables lists and filters by spaces

* simplified smartJoin

* avoid force unwrap
2018-05-13 01:06:38 +01:00
Ilya Puchka eb8c875853 docs: Update documentation (#213)
* Update documentation

* Update builtins.rst
2018-05-05 15:33:11 -07:00
Ilya Puchka 7c499cc077 fix(tokeniser): Tokenising a quote inside quoted parameter (#210) 2018-04-17 11:28:28 -07:00
Ilya Puchka fe01beb4bb feat(for loop): Support range literals (#192) 2018-04-04 17:56:58 -07:00
Ilya Puchka 2e6a7215c5 fix: subscripting tuple by value index (#172) 2018-04-04 17:25:13 -07:00
Ilya Puchka f457cddd3f feat(for loop): added property for loop length (#171) 2018-04-04 17:23:02 -07:00
Ilya Puchka 6b02fccf84 feat: added support for ranges in if-in expression (#193) 2018-04-04 17:22:05 -07:00
Ilya Puchka 29e859f1aa fix: Do not print Optional(...) when rendering arrays (#205) 2018-04-04 17:13:34 -07:00
Ilya Puchka 8fa0bd275c fix: accessing optional properties through reflection (#204) 2018-04-04 17:03:19 -07:00
Ilya Puchka 91847208a3 Merge pull request #177 from kylef/iterating-tuple-arrays
Iterating array of tuples with more than two values
2018-03-13 09:25:17 +00:00
Ilya Puchka 0bc6bd974e feat: allow using new lines inside tags (#202) 2018-03-13 09:07:56 +00:00
Ilya Puchka fa68ba9df8 feat: Added indent filter (#188) 2018-01-28 16:17:23 +00:00
Ilya Puchka 4827fb8e20 docs: Added the mention of projects that use Stencil (#176) 2018-01-22 18:30:53 +00:00
Ilya Puchka 359d086c02 feat(filters): Show similar filter names when missing filter(#186) 2018-01-22 18:27:42 +00:00
Ilya Puchka 24c9746689 fix: updated package bumping PathKit version and created package maifest for swift 3 (#184) 2018-01-22 18:24:32 +00:00
Ilya Puchka c4a84a6375 feat: apply string filters to arrays (#190) 2018-01-22 17:20:42 +00:00
Ilya Puchka c30597457f feat: added split fitler (#187) 2018-01-21 16:49:32 -08:00
Ilya Puchka b54292788f fixed swift 3 compiler crash 2018-01-01 16:22:06 +01:00
Ilya Puchka d6766b43da minor code refactoring 2018-01-01 16:22:06 +01:00
Ilya Puchka 662849e968 removed trailing witespaces 2018-01-01 16:22:06 +01:00
Ilya Puchka 4bfdb73175 removed unneeded code 2018-01-01 16:22:06 +01:00
Ilya Puchka a165a6715f fixed typos 2018-01-01 16:22:06 +01:00
Ilya Puchka ac2fd56e8e storing full sourcemap in token, refactored error reporting 2018-01-01 16:22:06 +01:00
Ilya Puchka cb124319ec removed unneeded changes 2018-01-01 16:22:05 +01:00
Ilya Puchka abeb30bb1c fix rendering templates created from string literals 2018-01-01 16:22:05 +01:00
Ilya Puchka ed885f462a refactored environment tests 2018-01-01 16:22:05 +01:00
Ilya Puchka 7756522317 fixed error on swift 3.1 2018-01-01 16:22:05 +01:00
Ilya Puchka 8d68edd725 replaced Lexeme protocol with Token 2018-01-01 16:22:05 +01:00
Ilya Puchka 218822fcb0 updated CHANGELOG 2018-01-01 16:22:04 +01:00
Ilya Puchka ea7e1efac7 fixed highlighting of errors happening in {{ block.super }} 2018-01-01 16:21:51 +01:00
Ilya Puchka bb3f33724b unified setting higlighting range for errors 2018-01-01 16:21:51 +01:00
Ilya Puchka c486617854 fixed reporting errors in child templates 2018-01-01 16:21:51 +01:00
Ilya Puchka 9a28142fa6 reporting error with its parent context 2018-01-01 16:21:51 +01:00
Ilya Puchka 53c1550c5b reporting node rendering errors using reference to node’s token 2018-01-01 16:21:50 +01:00
Ilya Puchka 27135f3ea3 changer Never return type to Error in ErrorReporter
this resolves warning related to Never type
2018-01-01 16:21:50 +01:00
Ilya Puchka 5878c323a2 fixed iterating over template lines on linux 2018-01-01 16:21:50 +01:00
Ilya Puchka 97ab3cf31d xcode backward compatibility fixes
- moved back to single line string literal
- fixed calculating string lenght
2018-01-01 16:21:50 +01:00
Ilya Puchka 7688326204 renamed Scanner property for original content 2018-01-01 16:21:50 +01:00
Ilya Puchka 079fdf39b8 added parent context to ErrorReporterContext and handling errors in include and extend nodes 2018-01-01 16:21:50 +01:00
Ilya Puchka e59609f140 handling unknown filter errors 2018-01-01 16:21:50 +01:00
Ilya Puchka d5f0be959f using error reporter from environment to handle syntax errors 2018-01-01 16:21:50 +01:00
Ilya Puchka 0edb38588d added ErrorReporter protocol with default implementation 2018-01-01 16:21:50 +01:00
Ilya Puchka 69cd8e4d3b replaced Token with Lexeme protocol on TemplateSyntaxError 2018-01-01 16:21:50 +01:00
Ilya Puchka 6300dbc7bf improved template syntax errors with file, line number and failed token highlighted in error message 2018-01-01 16:21:48 +01:00
Ilya Puchka b4dc8dbb76 support for iterating array of tuples with more than two values 2018-01-01 16:11:33 +01:00
Ilya Puchka 2e80f70f67 Merge pull request #181 from kylef/fix-float-from-int
Fix creating float from int
2018-01-01 15:46:21 +01:00
Ilya Puchka a6dba67828 fixed tests on swift 3.1 2018-01-01 15:20:02 +01:00
Ilya Puchka 691fe523b3 Merge branch 'master' into fix-float-from-int 2018-01-01 14:26:27 +01:00
Ilya Puchka c0e66eb96f feat: Allow iterating over tuple, struct and class properties
Closes #173
2017-12-31 12:38:09 -08:00
Ilya Puchka 79a16854e7 fixed implicit conversion of integer literals to float 2017-12-29 17:46:26 +01:00
Ilya Puchka 0f3a302108 fix(variable): Resolving variable as string literal (#168)
In Swift 4, a Substring was returned.
2017-12-26 20:27:26 -08:00
Ilya Puchka 1223efbc7e fix(default): Check for wrapped nil in filter (#162) 2017-12-24 11:11:46 -08:00
Ilya Puchka 9357df35d1 Merge pull request #152 from kylef/resolving-superclass-keys
Added recursive resolution for superclass properties
2017-11-30 15:56:46 +00:00
Ilya Puchka a96fcff680 Merge branch 'master' into resolving-superclass-keys 2017-11-30 10:44:46 +00:00
Ilya Puchka 0017aee5a8 Merge pull request #154 from kylef/fix-block-inheritance
Fixed block inheritance with several levels
2017-11-30 10:43:51 +00:00
Ilya Puchka 1e6846867e fixed compiling in swift 3 2017-11-29 23:18:48 +01:00
Ilya Puchka 93c07e22b1 fixed block inheritance with several levels 2017-11-29 23:04:33 +01:00
Ilya Puchka 98461c75b0 updated CHANGELOG.md 2017-11-29 10:23:54 +00:00
Ilya Puchka 9994972a24 added recursive resolution for superclass properties 2017-11-29 10:18:56 +00:00
Ilya Puchka e7a0738bda fix(variable): checking values for nil when using mirror (#144) 2017-10-02 09:38:50 +01:00
Ilya Puchka 3180b26673 feat: added in expression in if tag (#143) 2017-10-01 11:46:48 +01:00
Ilya Puchka 5541eae818 feat: fixed parsing several filter arguments with quotes (#98) 2017-04-18 22:58:42 +01:00
Ilya Puchka d1717df6ff feat(for tag): Support where expressions (#96) 2017-04-11 11:39:00 +01:00