Skip to content

Latest commit

 

History

History
27 lines (16 loc) · 1.43 KB

restrictions.md

File metadata and controls

27 lines (16 loc) · 1.43 KB

Sempare Template Engine

Copyright (c) 2019-2024 Sempare Limited

Known restrictions / limitations / bugs

  • basic arrays must be one dimensional

  • numbers are limited to the regex format [0-9]+([.][0-9]+)?([eE][-+]?[0-9]+)?.

  • include/require could be functions, but are special and thus part of the grammar.

  • custom methods don't work with 'array of const'. See Custom Functions for more information.

  • users may need to cast types explitly when calling functions/methods or introduce custom methods to assist with casting.

  • max run time is currently based on checking the time within loops. this does not however stop a function from blocking indefinitely.

  • review Sempare.Template.Compiler.inc to see conditional compilation

    • SUPPORT_JSON - Allows support of System.Json
    • SUPPORT_JSON_BOOL - Workaround on TJsonBool not being available in early versions.
    • SUPPORT_NET_ENCODING - Disables html encoding if not available. (todo workaround)
    • SUPPORT_BUFFERED_STREAM - Falls back to TFileStream from TBufferedStream when reading from files.
    • SEMPARE_TEMPLATE_CONFIRM_LICENSE - confirms that the developer has reviewed the license conditions.
  • In XE4, it seems that the metadata on one dimensional static arrays may be missing from RTTI, so when doing range enumeration, the template library starts from offset 0.