This is an automated email from the ASF dual-hosted git repository. harbs pushed a commit to branch feature/markdown in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
commit 00b3f43499c8c96807573bc2e2048ca95f44670e Author: Harbs <ha...@in-tools.com> AuthorDate: Sun Jan 16 02:09:14 2022 +0200 More work on rules --- .../apache/royale/markdown/rules/RulesManager.as | 244 ++++++++++++++++++++- .../royale/markdown/rules/block/BlockQuote.as | 11 +- .../org/apache/royale/markdown/rules/block/Code.as | 10 +- .../apache/royale/markdown/rules/block/Deflist.as | 11 +- .../apache/royale/markdown/rules/block/Fences.as | 11 +- .../apache/royale/markdown/rules/block/Footnote.as | 11 +- .../apache/royale/markdown/rules/block/Heading.as | 11 +- .../org/apache/royale/markdown/rules/block/Hr.as | 11 +- .../royale/markdown/rules/block/Htmlblock.as | 11 +- .../apache/royale/markdown/rules/block/Lheading.as | 11 +- .../org/apache/royale/markdown/rules/block/List.as | 11 +- .../royale/markdown/rules/block/Paragraph.as | 11 +- .../apache/royale/markdown/rules/block/Table.as | 11 +- .../org/apache/royale/markdown/rules/core/Abbr.as | 10 +- .../org/apache/royale/markdown/rules/core/Abbr2.as | 11 +- .../org/apache/royale/markdown/rules/core/Block.as | 10 +- .../royale/markdown/rules/core/Footnote_tail.as | 11 +- .../apache/royale/markdown/rules/core/Inline.as | 12 +- .../royale/markdown/rules/core/References.as | 11 +- .../royale/markdown/rules/core/Replacements.as | 11 +- .../royale/markdown/rules/core/Smartquotes.as | 11 +- .../royale/markdown/rules/inline/Autolink.as | 11 +- .../royale/markdown/rules/inline/Backticks.as | 11 +- .../org/apache/royale/markdown/rules/inline/Del.as | 11 +- .../royale/markdown/rules/inline/Emphasis.as | 11 +- .../apache/royale/markdown/rules/inline/Entity.as | 11 +- .../apache/royale/markdown/rules/inline/Escape.as | 11 +- .../royale/markdown/rules/inline/FootnoteRef.as | 11 +- .../apache/royale/markdown/rules/inline/Htmltag.as | 11 +- .../royale/markdown/rules/inline/InlineFootnote.as | 11 +- .../org/apache/royale/markdown/rules/inline/Ins.as | 11 +- .../apache/royale/markdown/rules/inline/Links.as | 11 +- .../apache/royale/markdown/rules/inline/Mark.as | 11 +- .../apache/royale/markdown/rules/inline/Newline.as | 11 +- .../org/apache/royale/markdown/rules/inline/Sub.as | 11 +- .../org/apache/royale/markdown/rules/inline/Sup.as | 11 +- .../apache/royale/markdown/rules/inline/Text.as | 11 +- 37 files changed, 594 insertions(+), 44 deletions(-) diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/RulesManager.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/RulesManager.as index 4432369..55641ea 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/RulesManager.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/RulesManager.as @@ -18,6 +18,8 @@ //////////////////////////////////////////////////////////////////////////////// package org.apache.royale.markdown { + import org.apache.royale.utils.array.arraysMatch; + public class RulesManager { /** @@ -33,6 +35,14 @@ package org.apache.royale.markdown 'heading','lheading','htmlblock','table','deflist','paragraph']; var inlineRules:Array = ['text','newline','escape','backticks','del','ins','mark','emphasis', 'sub','sup','links','footnote_inline','footnote_ref','autolink','htmltag','entity']; + + if(!checkCore(coreRules) || !checkBlock(blockRules) || !checkInline(inlineRules)) + { + enabledCoreRules = coreRules.slice(); + enabledBlockRules = blockRules.slice(); + enabledInlineRules = inlineRules.slice(); + initialized = false; + } } @@ -50,6 +60,14 @@ package org.apache.royale.markdown var inlineRules:Array = ['text','newline','escape','backticks','del','emphasis', 'links','footnote_ref','autolink','htmltag','entity']; + if(!checkCore(coreRules) || !checkBlock(blockRules) || !checkInline(inlineRules)) + { + enabledCoreRules = coreRules.slice(); + enabledBlockRules = blockRules.slice(); + enabledInlineRules = inlineRules.slice(); + initialized = false; + } + } /** * Sets rules to commonmark compatibility @@ -61,15 +79,60 @@ package org.apache.royale.markdown var coreRules:Array = ['block','references','inline','abbr2']; var blockRules:Array = ['code','fences','blockquote','hr','list','heading','htmlblock','paragraph']; var inlineRules:Array = ['text','newline','escape','backticks','emphasis','links','autolink','htmltag','entity']; + + if(!checkCore(coreRules) || !checkBlock(blockRules) || !checkInline(inlineRules)) + { + enabledCoreRules = coreRules.slice(); + enabledBlockRules = blockRules.slice(); + enabledInlineRules = inlineRules.slice(); + initialized = false; + } + } + private static function checkCore(toCheck:Array):Boolean + { + return arraysMatch(toCheck,enabledCoreRules); + } + private static function checkBlock(toCheck:Array):Boolean + { + return arraysMatch(toCheck,enabledBlockRules); + } + private static function checkInline(toCheck:Array):Boolean + { + return arraysMatch(toCheck,enabledInlineRules); + } + + public static function disableRule(name:String):void + { + if(enabledCoreRules.indexOf(name) != -1) + { + enabledCoreRules.splice(enabledCoreRules.indexOf(name),1); + initialized = false; + } + else if(enabledBlockRules.indexOf(name) != -1) + { + enabledBlockRules.splice(enabledBlockRules.indexOf(name),1); + initialized = false; + } + else if(enabledInlineRules.indexOf(name) != -1) + { + enabledInlineRules.splice(enabledInlineRules.indexOf(name),1); + initialized = false; + } + } + private static var enabledCoreRules:Array; private static var enabledBlockRules:Array; private static var enabledInlineRules:Array; - private static var coreRules:Array; - private static var blockRules:Array; - private static var inlineRules:Array; + private static var coreRules:Vector.<IRule>; + private static var blockRules:Vector.<IRule>; + private static var inlineRules:Vector.<IRule>; + + private static var paragraphRules:Vector.<IRule>; + private static var blockquoteRules:Vector.<IRule>; + private static var listRules:Vector.<IRule>; /** * @@ -96,7 +159,7 @@ Block [ 'table', table, [ 'paragraph' ] ], defaults [ 'deflist', deflist, [ 'paragraph' ] ], [ 'paragraph', paragraph ] commonmark - +//TODO figure out a cleaner way to get the sub-rules Inline [ 'text', text ], commonmark [ 'newline', newline ], commonmark @@ -122,18 +185,183 @@ Inline private static function initialize():void { initialized = true; + coreRules = new Vector.<IRule>(); + for each(var rule:String in enabledCoreRules) + { + switch(rule) + { + case 'block': + coreRules.push(Block.get()); + break; + case 'abbr': + coreRules.push(Abbr.get()); + break; + case 'references': + coreRules.push(References.get()); + break; + case 'inline': + coreRules.push(Inline.get()); + break; + case 'footnote_tail': + coreRules.push(Footnote_tail.get()); + break; + case 'abbr2': + coreRules.push(Abbr2.get()); + break; + case 'replacements': + coreRules.push(Replacements.get()); + break; + case 'smartquotes': + coreRules.push(Smartquotes.get()); + break; + default: + break; + } + } + + blockRules = new Vector.<IRule>(); + paragraphRules = new Vector.<IRule>(); + blockquoteRules = new Vector.<IRule>(); + listRules = new Vector.<IRule>(); + + for each(rule in enabledBlockRules) + { + switch(rule) + { + + case 'code': + blockRules.push(Code.get()); + break; + case 'fences': + blockRules.push(Fences.get()); + paragraphRules.push(Fences.get()); + blockquoteRules.push(Fences.get()); + listRules.push(Fences.get()); + break; + case 'blockquote': + blockRules.push(BlockQuote.get()); + paragraphRules.push(BlockQuote.get()); + blockquoteRules.push(BlockQuote.get()); + listRules.push(BlockQuote.get()); + break; + case 'hr': + blockRules.push(Hr.get()); + paragraphRules.push(Hr.get()); + blockquoteRules.push(Hr.get()); + listRules.push(Hr.get()); + break; + case 'list': + blockRules.push(List.get()); + paragraphRules.push(List.get()); + blockquoteRules.push(List.get()); + break; + case 'footnote': + blockRules.push(Footnote.get()); + paragraphRules.push(Footnote.get()); + break; + case 'heading': + blockRules.push(Heading.get()); + paragraphRules.push(Heading.get()); + blockquoteRules.push(Heading.get()); + break; + case 'lheading': + blockRules.push(Lheading.get()); + break; + case 'htmlblock': + blockRules.push(Htmlblock.get()); + paragraphRules.push(Htmlblock.get()); + blockquoteRules.push(Htmlblock.get()); + break; + case 'table': + blockRules.push(Table.get()); + paragraphRules.push(Table.get()); + break; + case 'deflist': + blockRules.push(Deflist.get()); + paragraphRules.push(Deflist.get()); + break; + case 'paragraph': + blockRules.push(Paragraph.get()); + break; + default: + break; + + } + } + + inlineRules = new Vector.<IRule>(); + + for each(rule in enabledBlockRules) + { + switch(rule) + { + case 'text': + inlineRules.push(Text.get()); + break; + case 'newline': + inlineRules.push(Newline.get()); + break; + case 'escape': + inlineRules.push(Escape.get()); + break; + case 'backticks': + inlineRules.push(Backticks.get()); + break; + case 'del': + inlineRules.push(Del.get()); + break; + case 'ins': + inlineRules.push(Ins.get()); + break; + case 'mark': + inlineRules.push(Mark.get()); + break; + case 'emphasis': + inlineRules.push(Emphasis.get()); + break; + case 'sub': + inlineRules.push(Sub.get()); + break; + case 'sup': + inlineRules.push(Sup.get()); + break; + case 'links': + inlineRules.push(Links.get()); + break; + case 'footnote_inline': + inlineRules.push(InlineFootnote.get()); + break; + case 'footnote_ref': + inlineRules.push(FootnoteRef.get()); + break; + case 'autolink': + inlineRules.push(Autolink.get()); + break; + case 'htmltag': + inlineRules.push(Htmltag.get()); + break; + case 'entity': + inlineRules.push(Entity.get()); + break; + default: + break; + + } + } } - private static function getCoreRules():Array + private static function getCoreRules():Vector.<IRule> { - //TODO build the rules from the settings - return null; + if(!coreRules) + initialize(); + + return coreRules; } public static function runCoreRules(state:CoreState):void { if(!initialized) initialize(); - var rules:Array = getCoreRules(); + var rules:Vector.<IRule> = getCoreRules(); for each(var rule:IRule in rules) { rule.parse(state); diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/BlockQuote.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/BlockQuote.as index 6322385..c497158 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/BlockQuote.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/BlockQuote.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class BlockQuote extends Rule { - public function BlockQuote() + private function BlockQuote() { } + private static var _instance:BlockQuote; + public static function get():BlockQuote + { + if(!_instance) + _instance = new BlockQuote(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Code.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Code.as index 8571796..eed649b 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Code.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Code.as @@ -20,10 +20,18 @@ package org.apache.royale.markdown { public class Code extends Rule { - public function Code() + private function Code() { } + private static var _instance:Code; + public static function get():Code + { + if(!_instance) + _instance = new Code(); + + return _instance; + } /** * parses the rule diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Deflist.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Deflist.as index f4feeef..8482377 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Deflist.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Deflist.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Deflist extends Rule { - public function Deflist() + private function Deflist() { } + private static var _instance:Deflist; + public static function get():Deflist + { + if(!_instance) + _instance = new Deflist(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Fences.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Fences.as index 1804b54..efa7d4b 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Fences.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Fences.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Fences extends Rule { - public function Fences() + private function Fences() { } + private static var _instance:Fences; + public static function get():Fences + { + if(!_instance) + _instance = new Fences(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Footnote.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Footnote.as index 902f39f..1535cbc 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Footnote.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Footnote.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Footnote extends Rule { - public function Footnote() + private function Footnote() { } + private static var _instance:Footnote; + public static function get():Footnote + { + if(!_instance) + _instance = new Footnote(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Heading.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Heading.as index 1e0b149..82b5778 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Heading.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Heading.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Heading extends Rule { - public function Heading() + private function Heading() { } + private static var _instance:Heading; + public static function get():Heading + { + if(!_instance) + _instance = new Heading(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Hr.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Hr.as index c4d5e7f..d0abf96 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Hr.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Hr.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Hr extends Rule { - public function Hr() + private function Hr() { } + private static var _instance:Hr; + public static function get():Hr + { + if(!_instance) + _instance = new Hr(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Htmlblock.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Htmlblock.as index f1e3e83..f943e55 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Htmlblock.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Htmlblock.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Htmlblock extends Rule { - public function Htmlblock() + private function Htmlblock() { } + private static var _instance:Htmlblock; + public static function get():Htmlblock + { + if(!_instance) + _instance = new Htmlblock(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Lheading.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Lheading.as index 01a350d..9035060 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Lheading.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Lheading.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Lheading extends Rule { - public function Lheading() + private function Lheading() { } + private static var _instance:Lheading; + public static function get():Lheading + { + if(!_instance) + _instance = new Lheading(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/List.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/List.as index b8124eb..2c8a09d 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/List.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/List.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class List extends Rule { - public function List() + private function List() { } + private static var _instance:List; + public static function get():List + { + if(!_instance) + _instance = new List(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Paragraph.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Paragraph.as index 8d11241..9c7da82 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Paragraph.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Paragraph.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Paragraph extends Rule { - public function Paragraph() + private function Paragraph() { } + private static var _instance:Paragraph; + public static function get():Paragraph + { + if(!_instance) + _instance = new Paragraph(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Table.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Table.as index 44286aa..c8034e7 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Table.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/block/Table.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Table extends Rule { - public function Table() + private function Table() { } + private static var _instance:Table; + public static function get():Table + { + if(!_instance) + _instance = new Table(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Abbr.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Abbr.as index f8ab6c2..dd20d73 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Abbr.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Abbr.as @@ -20,10 +20,18 @@ package org.apache.royale.markdown { public class Abbr extends Rule { - public function Abbr() + private function Abbr() { } + private static var _instance:Abbr; + public static function get():Abbr + { + if(!_instance) + _instance = new Abbr(); + + return _instance; + } /** * parses the rule diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Abbr2.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Abbr2.as index a4ed27c..5ecdbe0 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Abbr2.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Abbr2.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Abbr2 extends Rule { - public function Abbr2() + private function Abbr2() { } + private static var _instance:Abbr2; + public static function get():Abbr2 + { + if(!_instance) + _instance = new Abbr2(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Block.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Block.as index 6758001..24fcbec 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Block.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Block.as @@ -20,10 +20,18 @@ package org.apache.royale.markdown { public class Block extends Rule { - public function Block() + private function Block() { } + private static var _instance:Block; + public static function get():Block + { + if(!_instance) + _instance = new Block(); + + return _instance; + } /** * parses the rule diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Footnote_tail.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Footnote_tail.as index b4740b4..a5d9aee 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Footnote_tail.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Footnote_tail.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Footnote_tail extends Rule { - public function Footnote_tail() + private function Footnote_tail() { } + private static var _instance:Footnote_tail; + public static function get():Footnote_tail + { + if(!_instance) + _instance = new Footnote_tail(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Inline.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Inline.as index 95d0461..d08fe95 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Inline.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Inline.as @@ -20,11 +20,21 @@ package org.apache.royale.markdown { public class Inline extends Rule { - public function Inline() + private function Inline() { } + private static var _instance:Inline; + public static function get():Inline + { + if(!_instance) + _instance = new Inline(); + + return _instance; + } + + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/References.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/References.as index 87dc3bf..e957ac4 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/References.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/References.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class References extends Rule { - public function References() + private function References() { } + private static var _instance:References; + public static function get():References + { + if(!_instance) + _instance = new References(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Replacements.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Replacements.as index d30c708..a295fd6 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Replacements.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Replacements.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Replacements extends Rule { - public function Replacements() + private function Replacements() { } + private static var _instance:Replacements; + public static function get():Replacements + { + if(!_instance) + _instance = new Replacements(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Smartquotes.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Smartquotes.as index 8516405..aff0796 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Smartquotes.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/core/Smartquotes.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Smartquotes extends Rule { - public function Smartquotes() + private function Smartquotes() { } + private static var _instance:Smartquotes; + public static function get():Smartquotes + { + if(!_instance) + _instance = new Smartquotes(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Autolink.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Autolink.as index 77a8089..b2853d8 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Autolink.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Autolink.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Autolink extends Rule { - public function Autolink() + private function Autolink() { } + private static var _instance:Autolink; + public static function get():Autolink + { + if(!_instance) + _instance = new Autolink(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Backticks.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Backticks.as index 4fc09f8..83615e7 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Backticks.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Backticks.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Backticks extends Rule { - public function Backticks() + private function Backticks() { } + private static var _instance:Backticks; + public static function get():Backticks + { + if(!_instance) + _instance = new Backticks(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Del.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Del.as index 4805f1f..5af84d0 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Del.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Del.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Del extends Rule { - public function Del() + private function Del() { } + private static var _instance:Del; + public static function get():Del + { + if(!_instance) + _instance = new Del(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Emphasis.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Emphasis.as index f5d79de..5fba8e1 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Emphasis.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Emphasis.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Emphasis extends Rule { - public function Emphasis() + private function Emphasis() { } + private static var _instance:Emphasis; + public static function get():Emphasis + { + if(!_instance) + _instance = new Emphasis(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Entity.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Entity.as index 185dcfe..1908a8b 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Entity.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Entity.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Entity extends Rule { - public function Entity() + private function Entity() { } + private static var _instance:Entity; + public static function get():Entity + { + if(!_instance) + _instance = new Entity(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Escape.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Escape.as index 8584db5..5071cab 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Escape.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Escape.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Escape extends Rule { - public function Escape() + private function Escape() { } + private static var _instance:Escape; + public static function get():Escape + { + if(!_instance) + _instance = new Escape(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/FootnoteRef.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/FootnoteRef.as index b3ecef1..04b9a3d 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/FootnoteRef.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/FootnoteRef.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class FootnoteRef extends Rule { - public function FootnoteRef() + private function FootnoteRef() { } + private static var _instance:FootnoteRef; + public static function get():FootnoteRef + { + if(!_instance) + _instance = new FootnoteRef(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Htmltag.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Htmltag.as index d4415a1..73a9699 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Htmltag.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Htmltag.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Htmltag extends Rule { - public function Htmltag() + private function Htmltag() { } + private static var _instance:Htmltag; + public static function get():Htmltag + { + if(!_instance) + _instance = new Htmltag(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/InlineFootnote.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/InlineFootnote.as index e5f3716..28cc84b 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/InlineFootnote.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/InlineFootnote.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class InlineFootnote extends Rule { - public function InlineFootnote() + private function InlineFootnote() { } + private static var _instance:InlineFootnote; + public static function get():InlineFootnote + { + if(!_instance) + _instance = new InlineFootnote(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Ins.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Ins.as index 9e01f82..0e783c2 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Ins.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Ins.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Ins extends Rule { - public function Ins() + private function Ins() { } + private static var _instance:Ins; + public static function get():Ins + { + if(!_instance) + _instance = new Ins(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Links.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Links.as index 1d734b4..d876ab6 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Links.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Links.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Links extends Rule { - public function Links() + private function Links() { } + private static var _instance:Links; + public static function get():Links + { + if(!_instance) + _instance = new Links(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Mark.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Mark.as index 811062e..27a856b 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Mark.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Mark.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Mark extends Rule { - public function Mark() + private function Mark() { } + private static var _instance:Mark; + public static function get():Mark + { + if(!_instance) + _instance = new Mark(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Newline.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Newline.as index 285b61e..7216084 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Newline.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Newline.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Newline extends Rule { - public function Newline() + private function Newline() { } + private static var _instance:Newline; + public static function get():Newline + { + if(!_instance) + _instance = new Newline(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Sub.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Sub.as index c3998ca..13c919a 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Sub.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Sub.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Sub extends Rule { - public function Sub() + private function Sub() { } + private static var _instance:Sub; + public static function get():Sub + { + if(!_instance) + _instance = new Sub(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Sup.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Sup.as index 076dcb0..a5e1ea7 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Sup.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Sup.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Sup extends Rule { - public function Sup() + private function Sup() { } + private static var _instance:Sup; + public static function get():Sup + { + if(!_instance) + _instance = new Sup(); + + return _instance; + } + /** * parses the rule * @langversion 3.0 diff --git a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Text.as b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Text.as index 33a1672..9f9c50f 100644 --- a/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Text.as +++ b/frameworks/projects/Markdown/src/main/royale/org/apache/royale/markdown/rules/inline/Text.as @@ -20,11 +20,20 @@ package org.apache.royale.markdown { public class Text extends Rule { - public function Text() + private function Text() { } + private static var _instance:Text; + public static function get():Text + { + if(!_instance) + _instance = new Text(); + + return _instance; + } + /** * parses the rule * @langversion 3.0