Merge branch '3' into feature/FREEMARKER-55-2
Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/f1e8a4df Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/f1e8a4df Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/f1e8a4df Branch: refs/heads/3 Commit: f1e8a4df1a745164bcf48ab9a92cec5beb598bc2 Parents: 63f42c3 aec8e66 Author: Woonsan Ko <woon...@apache.org> Authored: Sat Sep 2 22:11:45 2017 -0400 Committer: Woonsan Ko <woon...@apache.org> Committed: Sat Sep 2 22:11:45 2017 -0400 ---------------------------------------------------------------------- FM3-CHANGE-LOG.txt | 77 ++-- .../core/FM2ASTToFM3SourceConverter.java | 8 + .../converter/FM2ToFM3ConverterTest.java | 4 + .../freemarker/core/DirectiveCallPlaceTest.java | 2 +- .../model/impl/DefaultObjectWrapperTest.java | 123 ++++--- .../model/impl/RestrictedObjectWrapperTest.java | 6 +- .../templatesuite/CoreTemplateTestSuite.java | 12 +- .../templatesuite/models/AllTemplateModels.java | 45 +-- .../core/templatesuite/models/BooleanHash1.java | 4 +- .../core/templatesuite/models/BooleanHash2.java | 4 +- .../core/templatesuite/models/BooleanList1.java | 17 +- .../core/templatesuite/models/BooleanList2.java | 15 +- .../models/HashAndStringModel.java | 29 +- .../core/templatesuite/models/Listables.java | 4 +- .../core/templatesuite/models/MultiModel1.java | 18 +- .../core/templatesuite/models/MultiModel3.java | 2 +- .../core/templatesuite/models/MultiModel4.java | 21 +- .../core/templatesuite/models/MultiModel5.java | 19 +- .../core/userpkg/TestTemplateCallableModel.java | 2 +- .../templatesuite/expected/type-builtins.txt | 28 +- .../templatesuite/templates/range-common.ftl | 314 ---------------- .../core/templatesuite/templates/range.ftl | 308 +++++++++++++++- .../templatesuite/templates/type-builtins.ftl | 16 +- .../org/apache/freemarker/core/ASTDirList.java | 41 +-- .../freemarker/core/ASTDirMacroOrFunction.java | 3 +- .../apache/freemarker/core/ASTDirNested.java | 8 +- .../freemarker/core/ASTExpAddOrConcat.java | 108 ++++-- .../apache/freemarker/core/ASTExpBuiltIn.java | 8 +- .../freemarker/core/ASTExpBuiltInVariable.java | 2 +- .../apache/freemarker/core/ASTExpDefault.java | 92 +++-- .../freemarker/core/ASTExpDynamicKeyName.java | 35 +- .../freemarker/core/ASTExpHashLiteral.java | 10 +- .../freemarker/core/ASTExpListLiteral.java | 44 +-- .../org/apache/freemarker/core/ASTExpRange.java | 2 +- .../apache/freemarker/core/ASTExpression.java | 20 +- .../freemarker/core/BoundedRangeModel.java | 38 +- .../freemarker/core/BuiltInForIterable.java | 43 +++ .../freemarker/core/BuiltInForSequence.java | 6 +- .../freemarker/core/BuiltInsForHashes.java | 12 +- .../core/BuiltInsForMultipleTypes.java | 51 +-- .../freemarker/core/BuiltInsForNodes.java | 3 +- .../freemarker/core/BuiltInsForSequences.java | 359 +++++++------------ .../core/BuiltInsForStringsBasic.java | 4 +- .../freemarker/core/BuiltInsForStringsMisc.java | 3 +- .../core/BuiltInsForStringsRegexp.java | 97 ++--- .../org/apache/freemarker/core/Environment.java | 32 +- .../core/InvalidReferenceException.java | 2 +- .../core/ListableRightUnboundedRangeModel.java | 94 ----- .../apache/freemarker/core/MessageUtils.java | 21 +- .../freemarker/core/NativeCollection.java | 55 +++ .../freemarker/core/NativeCollectionEx.java | 72 ---- .../apache/freemarker/core/NativeHashEx2.java | 8 +- .../apache/freemarker/core/NativeSequence.java | 39 +- .../core/NativeStringArraySequence.java | 27 +- .../core/NativeStringCollectionCollection.java | 74 ++++ .../NativeStringCollectionCollectionEx.java | 78 ---- .../core/NativeStringListSequence.java | 27 +- .../core/NativeTemplateModelIterator.java | 44 +++ .../org/apache/freemarker/core/RangeModel.java | 17 +- .../core/RightUnboundedRangeModel.java | 74 +++- .../org/apache/freemarker/core/_EvalUtils.java | 11 +- .../core/debug/RmiDebugModelImpl.java | 10 +- .../core/debug/RmiDebuggedEnvironmentImpl.java | 6 +- .../core/model/EmptyCollectionExModel.java | 43 --- .../core/model/EmptyCollectionModel.java | 47 +++ .../freemarker/core/model/EmptyHashModel.java | 4 +- .../core/model/EmptyIterableModel.java | 31 ++ .../core/model/EmptyIteratorModel.java | 2 +- .../core/model/EmptySequenceModel.java | 12 +- .../core/model/GeneralPurposeNothing.java | 25 +- .../core/model/TemplateCollectionModel.java | 34 +- .../core/model/TemplateCollectionModelEx.java | 45 --- .../core/model/TemplateDirectiveModel.java | 2 +- .../core/model/TemplateHashModel.java | 2 +- .../core/model/TemplateHashModelEx.java | 11 +- .../core/model/TemplateIterableModel.java | 49 +++ .../core/model/TemplateModelIterator.java | 23 +- .../core/model/TemplateSequenceModel.java | 25 +- .../freemarker/core/model/impl/BeanModel.java | 18 +- .../core/model/impl/ClassBasedModelFactory.java | 2 +- .../core/model/impl/ClassIntrospector.java | 6 +- .../core/model/impl/CollectionAdapter.java | 88 ----- .../core/model/impl/CollectionAndSequence.java | 111 ------ .../core/model/impl/DefaultArrayAdapter.java | 258 ++++++++++++- .../model/impl/DefaultEnumerationAdapter.java | 12 +- .../core/model/impl/DefaultIterableAdapter.java | 10 +- .../core/model/impl/DefaultIteratorAdapter.java | 12 +- .../core/model/impl/DefaultListAdapter.java | 42 +-- .../core/model/impl/DefaultMapAdapter.java | 10 +- .../impl/DefaultNonListCollectionAdapter.java | 12 +- .../core/model/impl/DefaultObjectWrapper.java | 61 ++-- .../DefaultUnassignableIteratorAdapter.java | 59 --- .../freemarker/core/model/impl/HashAdapter.java | 181 ---------- .../core/model/impl/IterableAndSequence.java | 82 +++++ .../IteratorToTemplateModelIteratorAdapter.java | 52 +++ .../core/model/impl/ResourceBundleModel.java | 6 +- .../core/model/impl/SequenceAdapter.java | 68 ---- .../impl/SequenceTemplateModelIterator.java | 63 ++++ .../freemarker/core/model/impl/SetAdapter.java | 32 -- .../core/model/impl/SimpleCollection.java | 93 ++--- .../freemarker/core/model/impl/SimpleHash.java | 5 +- .../core/model/impl/SimpleIterable.java | 134 +++++++ .../core/model/impl/SimpleSequence.java | 31 +- .../impl/SingleItemTemplateModelIterator.java | 48 +++ .../freemarker/core/model/impl/StaticModel.java | 4 +- .../impl/TemplateCollectionModelAdapter.java | 77 ++++ .../model/impl/TemplateHashModelAdapter.java | 185 ++++++++++ .../impl/TemplateIterableModelAdapter.java | 57 +++ .../impl/TemplateModelIteratorAdapter.java | 65 ++++ .../model/impl/TemplateModelListSequence.java | 33 +- .../impl/TemplateSequenceModelAdapter.java | 88 +++++ .../model/impl/TemplateSetModelAdapter.java | 32 ++ .../freemarker/core/util/CallableUtils.java | 26 +- .../apache/freemarker/core/util/DeepUnwrap.java | 18 +- .../freemarker/core/util/StringToIndexMap.java | 6 +- .../core/util/TemplateLanguageUtils.java | 8 +- freemarker-core/src/main/javacc/FTL.jj | 4 +- .../freemarker/dom/AttributeNodeModel.java | 2 +- .../freemarker/dom/CharacterDataNodeModel.java | 2 +- .../apache/freemarker/dom/DocumentModel.java | 2 +- .../freemarker/dom/DocumentTypeModel.java | 2 +- .../org/apache/freemarker/dom/ElementModel.java | 7 +- .../apache/freemarker/dom/NodeListModel.java | 34 +- .../org/apache/freemarker/dom/NodeModel.java | 32 +- .../org/apache/freemarker/dom/PINodeModel.java | 2 +- .../dom/SunInternalXalanXPathSupport.java | 2 +- .../freemarker/dom/XalanXPathSupport.java | 2 +- .../servlet/HttpRequestHashModel.java | 8 +- .../servlet/HttpRequestParametersHashModel.java | 68 ++-- .../servlet/HttpSessionHashModel.java | 2 +- .../servlet/ServletContextHashModel.java | 2 +- .../servlet/jsp/FreeMarkerPageContext.java | 4 + .../freemarker/servlet/jsp/JspTagModelBase.java | 2 +- .../freemarker/servlet/jsp/TaglibFactory.java | 4 +- .../expected/attributes-modernModels.txt | 4 +- .../basic/WEB-INF/expected/attributes.txt | 4 +- .../org/apache/freemarker/test/TestUtils.java | 7 +- 137 files changed, 3085 insertions(+), 2319 deletions(-) ----------------------------------------------------------------------