UNPKG

ts-simple-ast

Version:

TypeScript compiler wrapper for AST navigation and code generation.

380 lines (275 loc) 28.9 kB
<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title>ts-simple-ast - Classes</title> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous"> <link rel="stylesheet" href="/assets/css/style.css?v=502728dc7b09041e36b06c50f79a13adbfb6f1b2"> <!-- <link rel="stylesheet" href="/assets/css/style.css?v=502728dc7b09041e36b06c50f79a13adbfb6f1b2"> <link rel="stylesheet" href="/assets/css/custom-style.css?v=502728dc7b09041e36b06c50f79a13adbfb6f1b2"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script src="/assets/js/main.js"></script>--> </head> <body> <div class="main"> <header class="container"> <div class="row"> <h1 onclick="document.location.href = '/'" class="headerLink">ts-simple-ast</h1> <!--<p class="subText">Simple way to navigate and manipulate the TypeScript AST.</p>--> </div> </header> <div class="container"> <div class="row"> <div class="col-md-3"> <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <nav class="sidebar-nav" id="navbarSupportedContent"> <ul class="navbar-nav navbar-default"> <li class="nav-item"> <a class="nav-link" href="/">Overview</a> </li> <li class="nav-item"> <a class="nav-link" href="/setup">Setup</a> </li> <li class="nav-item"> <a class="nav-link" href="/navigation">Navigation</a> </li> <li class="nav-item"> <a class="nav-link" href="/manipulation">Manipulation</a> </li> <li class="nav-item"> <a class="nav-link" href="/emitting">Emitting</a> </li> <li class=""> <a class="nav-link" href="/details/index">Details</a> <ul> <li class=""><a href="/details/source-files">Source Files</a></li> <li class="active"><a href="/details/classes">Classes</a></li> <li class=""><a href="/details/decorators">Decorators</a></li> <li class=""><a href="/details/enums">Enums</a></li> <li class=""><a href="/details/functions">Functions</a></li> <li class=""><a href="/details/imports">Imports</a></li> <li class=""><a href="/details/interfaces">Interfaces</a></li> <li class=""><a href="/details/namespaces">Namespaces</a></li> <li class=""><a href="/details/parameters">Parameters</a></li> <li class=""><a href="/details/type-aliases">Type Aliases</a></li> <li class=""><a href="/details/variables">Variables</a></li> <li>--</li> <li class=""><a href="/details/types">Types</a></li> <li class=""><a href="/details/signatures">Signatures</a></li> <li>--</li> <li class=""><a href="/details/expressions">Expressions</a></li> <li class=""><a href="/details/object-literal-expressions">Object Literal Expressions</a></li> <li class=""><a href="/details/identifiers">Identifiers</a></li> <li class=""><a href="/details/ambient">Ambient</a></li> <li class=""><a href="/details/async">Async</a></li> <li class=""><a href="/details/exports">Exports</a></li> <li class=""><a href="/details/generators">Generators</a></li> <li class=""><a href="/details/initializers">Initializers</a></li> <li class=""><a href="/details/documentation">JS Docs</a></li> <li class=""><a href="/details/literals">Literals</a></li> <li class=""><a href="/details/modifiers">Modifiers</a></li> </ul> </li> <li class="nav-item"> <a class="nav-link" href="/utilities">Utilities</a> </li> <li class="nav-item"> <a class="nav-link" href="http://github.com/dsherret/ts-simple-ast">View on GitHub</a> </li> </ul> </nav> </div> <section class="container-fluid col-md-9"> <h2 id="class-declarations">Class Declarations</h2> <p>Class declarations can be retrieved from source files, namespaces, or function bodies:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">classes</span> <span class="o">=</span> <span class="nx">sourceFile</span><span class="p">.</span><span class="nx">getClasses</span><span class="p">();</span> <span class="kd">const</span> <span class="nx">class1</span> <span class="o">=</span> <span class="nx">sourceFile</span><span class="p">.</span><span class="nx">getClass</span><span class="p">(</span><span class="s2">"Class1"</span><span class="p">);</span> <span class="kd">const</span> <span class="nx">firstClassWithConstructor</span> <span class="o">=</span> <span class="nx">sourceFile</span><span class="p">.</span><span class="nx">getClass</span><span class="p">(</span><span class="nx">c</span> <span class="o">=&gt;</span> <span class="nx">c</span><span class="p">.</span><span class="nx">getConstructors</span><span class="p">().</span><span class="nx">length</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">);</span> </code></pre> </div> <h3 id="addinsert">Add/Insert</h3> <p>Add or insert classes to a source file, namespace, or function like declarations by calling <code class="highlighter-rouge">addClass()</code>, <code class="highlighter-rouge">addClasses()</code>, <code class="highlighter-rouge">insertClass()</code>, or <code class="highlighter-rouge">insertClasses()</code>.</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">classDeclaration</span> <span class="o">=</span> <span class="nx">sourceFile</span><span class="p">.</span><span class="nx">addClass</span><span class="p">({</span> <span class="na">name</span><span class="p">:</span> <span class="s2">"ClassName"</span> <span class="p">});</span> </code></pre> </div> <h3 id="remove">Remove</h3> <p>Call <code class="highlighter-rouge">.remove()</code>:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">remove</span><span class="p">();</span> </code></pre> </div> <h3 id="extends-expression">Extends expression</h3> <p>Will return <a href="expressions"><code class="highlighter-rouge">ExpressionWithTypeArguments | undefined</code></a>:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">extendsExpression</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getExtends</span><span class="p">();</span> </code></pre> </div> <p>Set the extends expression:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">setExtends</span><span class="p">(</span><span class="s2">"BaseClass"</span><span class="p">);</span> </code></pre> </div> <p>Remove it:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">removeExtends</span><span class="p">();</span> </code></pre> </div> <h3 id="implements-expressions">Implements expressions</h3> <p>Will return <a href="expressions"><code class="highlighter-rouge">ExpressionWithTypeArguments[]</code></a>:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">implementsExpressions</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getImplements</span><span class="p">();</span> </code></pre> </div> <p>Add or insert implements expressions:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">addImplements</span><span class="p">(</span><span class="s2">"Named"</span><span class="p">);</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">addImplements</span><span class="p">([</span><span class="s2">"Named"</span><span class="p">,</span> <span class="s2">"Aged"</span><span class="p">]);</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">insertImplements</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="s2">"Named"</span><span class="p">);</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">insertImplements</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="p">[</span><span class="s2">"Named"</span><span class="p">,</span> <span class="s2">"Aged"</span><span class="p">]);</span> </code></pre> </div> <p>Remove an expression:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">removeImplements</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span> <span class="c1">// index</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">removeImplements</span><span class="p">(</span><span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getImplements</span><span class="p">()[</span><span class="mi">0</span><span class="p">]);</span> <span class="c1">// node</span> </code></pre> </div> <h3 id="base-types">Base Types</h3> <p>Get the base types:</p> <div class="language-ts highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">baseTypes</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getBaseTypes</span><span class="p">();</span> <span class="c1">// returns: Type[]</span> </code></pre> </div> <p>This is useful to use if you don’t know if the class could possibly extend a mixin or a class.</p> <h3 id="base-class">Base Class</h3> <p>Get the base class:</p> <div class="language-ts highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">baseClass</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getBaseClass</span><span class="p">();</span> <span class="c1">// returns: ClassDeclaration | undefined</span> </code></pre> </div> <p>Note: This is not a useful method to use if the base could possibly be a mixin. If you expect mixins, then use <code class="highlighter-rouge">.getBaseTypes()</code>.</p> <h3 id="derived-classes">Derived Classes</h3> <p>Will return all the class declarations that derive from the current class:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">derivedClasses</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getDerivedClasses</span><span class="p">();</span> </code></pre> </div> <h3 id="constructor">Constructor</h3> <p>Constructors can be retreived via <code class="highlighter-rouge">getConstructors</code>. This returns all the constructors in an ambient context, but will only return the implementation constructor otherwise.</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">constructors</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getConstructors</span><span class="p">();</span> </code></pre> </div> <p>Add or insert a constructor by calling <code class="highlighter-rouge">addConstructor()</code> or <code class="highlighter-rouge">insertConstructor()</code> respectively.</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">ctor</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">addConstructor</span><span class="p">({</span> <span class="cm">/* options like parameters may go here */</span> <span class="p">});</span> </code></pre> </div> <h3 id="methods">Methods</h3> <p>Get instance methods:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">instanceMethods</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getInstanceMethods</span><span class="p">();</span> <span class="kd">const</span> <span class="nx">myMethod</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getInstanceMethod</span><span class="p">(</span><span class="s2">"myMethod"</span><span class="p">);</span> <span class="kd">const</span> <span class="nx">firstMethodWith2Params</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getInstanceMethod</span><span class="p">(</span><span class="nx">m</span> <span class="o">=&gt;</span> <span class="nx">m</span><span class="p">.</span><span class="nx">getParameters</span><span class="p">().</span><span class="nx">length</span> <span class="o">===</span> <span class="mi">2</span><span class="p">);</span> </code></pre> </div> <p>Get the static methods:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">staticMethods</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getStaticMethods</span><span class="p">();</span> <span class="kd">const</span> <span class="nx">myStaticMethod</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getStaticMethod</span><span class="p">(</span><span class="s2">"myMethod"</span><span class="p">);</span> <span class="kd">const</span> <span class="nx">firstStaticMethodWith2Params</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getStaticMethod</span><span class="p">(</span><span class="nx">m</span> <span class="o">=&gt;</span> <span class="nx">m</span><span class="p">.</span><span class="nx">getParameters</span><span class="p">().</span><span class="nx">length</span> <span class="o">===</span> <span class="mi">2</span><span class="p">);</span> </code></pre> </div> <h4 id="addinsert-1">Add/Insert</h4> <p>Add or insert methods by using <code class="highlighter-rouge">insertMethods()</code>, <code class="highlighter-rouge">insertMethod</code>, <code class="highlighter-rouge">addMethod</code>, or <code class="highlighter-rouge">addMethods</code>:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">method</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">addMethod</span><span class="p">({</span> <span class="na">isStatic</span><span class="p">:</span> <span class="kc">true</span><span class="p">,</span> <span class="na">name</span><span class="p">:</span> <span class="s2">"myMethod"</span><span class="p">,</span> <span class="na">returnType</span><span class="p">:</span> <span class="s2">"string"</span> <span class="p">});</span> </code></pre> </div> <h4 id="remove-1">Remove</h4> <p>Call <code class="highlighter-rouge">.remove()</code>:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">method</span><span class="p">.</span><span class="nx">remove</span><span class="p">();</span> </code></pre> </div> <h3 id="properties">Properties</h3> <p>Properties searched for can be of type <code class="highlighter-rouge">PropertyDeclaration</code>, <code class="highlighter-rouge">GetAccessorDeclaration</code>, <code class="highlighter-rouge">SetAccessorDeclaration</code>, or <code class="highlighter-rouge">ParameterDeclaration</code> (constructor parameter properties).</p> <p>Get the instance properties:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">instanceProperties</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getInstanceProperties</span><span class="p">();</span> <span class="kd">const</span> <span class="nx">myProperty</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getInstanceProperty</span><span class="p">(</span><span class="s2">"myProperty"</span><span class="p">);</span> <span class="kd">const</span> <span class="nx">myStringProperty</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getInstanceProperty</span><span class="p">(</span><span class="nx">p</span> <span class="o">=&gt;</span> <span class="nx">TypeGuards</span><span class="p">.</span><span class="nx">isPropertyDeclaration</span><span class="p">(</span><span class="nx">p</span><span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="nx">p</span><span class="p">.</span><span class="nx">getType</span><span class="p">().</span><span class="nx">getText</span><span class="p">()</span> <span class="o">===</span> <span class="s2">"string"</span><span class="p">);</span> </code></pre> </div> <p>Get the static properties:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">staticProperties</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getStaticProperties</span><span class="p">();</span> <span class="kd">const</span> <span class="nx">myStaticProperty</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getStaticProperty</span><span class="p">(</span><span class="s2">"myStaticProperty"</span><span class="p">);</span> <span class="kd">const</span> <span class="nx">myStaticStringProperty</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getStaticProperty</span><span class="p">(</span><span class="nx">p</span> <span class="o">=&gt;</span> <span class="nx">TypeGuards</span><span class="p">.</span><span class="nx">isPropertyDeclaration</span><span class="p">(</span><span class="nx">p</span><span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="nx">p</span><span class="p">.</span><span class="nx">getType</span><span class="p">().</span><span class="nx">getText</span><span class="p">()</span> <span class="o">===</span> <span class="s2">"string"</span><span class="p">);</span> </code></pre> </div> <h4 id="addinsert-2">Add/Insert</h4> <p>Add or insert properties by using <code class="highlighter-rouge">insertProperties()</code>, <code class="highlighter-rouge">insertProperty</code>, <code class="highlighter-rouge">addProperty</code>, or <code class="highlighter-rouge">addProperties</code>:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">property</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">({</span> <span class="na">isStatic</span><span class="p">:</span> <span class="kc">true</span><span class="p">,</span> <span class="na">name</span><span class="p">:</span> <span class="s2">"prop"</span><span class="p">,</span> <span class="na">type</span><span class="p">:</span> <span class="s2">"string"</span> <span class="p">});</span> </code></pre> </div> <p>Add or insert get accessors by using <code class="highlighter-rouge">insertGetAccessors()</code>, <code class="highlighter-rouge">insertGetAccessor</code>, <code class="highlighter-rouge">addGetAccessor</code>, or <code class="highlighter-rouge">addGetAccessors</code>:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">getAccessor</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">addGetAccessor</span><span class="p">({</span> <span class="na">name</span><span class="p">:</span> <span class="s2">"someNumber"</span><span class="p">,</span> <span class="na">returnType</span><span class="p">:</span> <span class="s2">"number"</span><span class="p">,</span> <span class="na">body</span><span class="p">:</span> <span class="s2">"return 5;"</span> <span class="p">});</span> </code></pre> </div> <p>Add or insert set accessors by using <code class="highlighter-rouge">insertSetAccessors()</code>, <code class="highlighter-rouge">insertSetAccessor</code>, <code class="highlighter-rouge">addSetAccessor</code>, or <code class="highlighter-rouge">addSetAccessors</code>:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">setAccessor</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">addSetAccessor</span><span class="p">({</span> <span class="na">name</span><span class="p">:</span> <span class="s2">"someNumber"</span><span class="p">,</span> <span class="na">parameters</span><span class="p">:</span> <span class="p">[{</span> <span class="na">name</span><span class="p">:</span> <span class="s2">"value"</span><span class="p">,</span> <span class="na">type</span><span class="p">:</span> <span class="s2">"number"</span> <span class="p">}],</span> <span class="na">body</span><span class="p">:</span> <span class="s2">"_someNumber = value;"</span> <span class="p">});</span> </code></pre> </div> <h4 id="remove-2">Remove</h4> <p>Call <code class="highlighter-rouge">.remove()</code>:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">property</span><span class="p">.</span><span class="nx">remove</span><span class="p">();</span> </code></pre> </div> <h3 id="get-members">Get members</h3> <p>Get all static and instance members:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">allMembers</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getAllMembers</span><span class="p">();</span> </code></pre> </div> <p>Get instance members:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">instanceMembers</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getInstanceMembers</span><span class="p">();</span> </code></pre> </div> <p>Get static members:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">staticMembers</span> <span class="o">=</span> <span class="nx">classDeclaration</span><span class="p">.</span><span class="nx">getStaticMembers</span><span class="p">();</span> </code></pre> </div> <h2 id="abstract">Abstract</h2> <p>Nodes on a class may be abstract.</p> <p>Get if it’s abstract:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">method</span><span class="p">.</span><span class="nx">isAbstract</span><span class="p">();</span> <span class="c1">// returns: boolean</span> </code></pre> </div> <p>Get the abstract keyword:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">method</span><span class="p">.</span><span class="nx">getAbstractKeyword</span><span class="p">();</span> <span class="c1">// returns: node | undefined</span> </code></pre> </div> <p>Set if abstract:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="nx">method</span><span class="p">.</span><span class="nx">setIsAbstract</span><span class="p">(</span><span class="kc">true</span><span class="p">);</span> <span class="c1">// set as abstract</span> <span class="nx">method</span><span class="p">.</span><span class="nx">setIsAbstract</span><span class="p">(</span><span class="kc">false</span><span class="p">);</span> <span class="c1">// set as not abstract</span> </code></pre> </div> <h2 id="constructors">Constructors</h2> <p>Constructors implement common functions found on function like declarations, but also include a scope.</p> <h2 id="methods-1">Methods</h2> <p>Explore the functionality available via auto-complete.</p> <h2 id="properties-1">Properties</h2> <p>Explore the functionality available via auto-complete.</p> <h2 id="get-accessors">Get Accessors</h2> <p>If it exists, get the corresponding set accessor:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">setAccessor</span> <span class="o">=</span> <span class="nx">getAccessor</span><span class="p">.</span><span class="nx">getSetAccessor</span><span class="p">();</span> </code></pre> </div> <h2 id="set-accessors">Set Accessors</h2> <p>If it exists, get the corresponding get accessor:</p> <div class="language-typescript highlighter-rouge"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">getAccessor</span> <span class="o">=</span> <span class="nx">setAccessor</span><span class="p">.</span><span class="nx">getGetAccessor</span><span class="p">();</span> </code></pre> </div> </section> </div> </div> <footer> </footer> </div> <script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script> <!--[if !IE]><script>fixScale(document);</script><![endif]--> </body> </html>