tag:blogger.com,1999:blog-39978151367711187762024-03-14T05:43:09.139+02:00Dawo - Dartlang PackageSome useful Dart notes and Copy-Pastes from Dartlang.org. And some Hard-Spots of language questions.HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.comBlogger21125tag:blogger.com,1999:blog-3997815136771118776.post-4843273557905469512017-11-11T07:50:00.002+02:002017-11-11T07:50:35.895+02:00Dawolang version 0.0.1 in GitHub an Pub. <pre style="background-color: white; font-family: "Courier New";"><span style="color: navy; font-weight: bold;">* </span>Small, literal word-based message and command language, that </pre>
<pre style="background-color: white; font-family: "Courier New";">eventually grows big, but stays always grateful to dartlang, </pre>
<pre style="background-color: white; font-family: "Courier New";">it's little brother.
<span style="color: navy; font-weight: bold;">* </span>Helps in standardizing words, that are used in messages, and </pre>
<pre style="background-color: white; font-family: "Courier New";">classifying them to groups.</pre>
<pre style="background-color: white; font-family: "Courier New";">Github: <a href="https://github.com/heiklap/dawolang/issues">https://github.com/heiklap/dawolang/issues</a></pre>
<span style="font-size: x-small;"><br /></span>
<span style="font-size: x-small;">A: Area________________A:GLOBAL A:INNER A:LOCAL A:OUTER A:WAY =5</span><br />
<span style="font-size: x-small;">a: Activity____________a:STAND a:TRANSPORT =2</span><br />
<span style="font-size: x-small;">B: Boost??_____________B:HOORAY =1</span><br />
<span style="font-size: x-small;">C: Command_____________C:CHECK-IN C:CUT C:DO C:FIND C:GEAR C:GRAB C:GO C:HIDE C:IGNORE C:LOCK C:ORDER C:OPEN C:PLAY C:RELAY C:RULE =15</span><br />
<span style="font-size: x-small;">c: command_____________c:TEST c:TODO c:USE c:WAIT c:WAKE-UP-SLEEPY-HEAD c:WAKE =6</span><br />
<span style="font-size: x-small;">D: Data________________D:BUS D:FURY D:PHOTO D:SPLIT D:STUFF =5</span><br />
<span style="font-size: x-small;">E: Effort______________E:ANSWER E:CONQUER E:DEVELOPMENT E:GOAL E:PLAN E:TRY =6</span><br />
<span style="font-size: x-small;">F: Functionality_______=0</span><br />
<span style="font-size: x-small;">G: Gear________________G:IDEA G:SHAPE G:STANCE G:VISION =4</span><br />
<span style="font-size: x-small;">H: Human_______________H:ADM H:GROUP H:KING H:SELF H:STAFF H:TEAM H:X-MEN =7</span><br />
<span style="font-size: x-small;">I: Info________________I:EXAMPLE I:GUIDE I:HELP I:HINT I:INFO I:MAP I:NOTE =7</span><br />
<span style="font-size: x-small;">J: Joint_______________J:JOIN J:SHARE =2</span><br />
<span style="font-size: x-small;">K: Kind________________K:KIND =1</span><br />
<span style="font-size: x-small;">L: Lang________________L:MACRO L:RECORD L:TALK =3</span><br />
<span style="font-size: x-small;">M: Message_____________M:MESSAGE M:PING =2</span><br />
<span style="font-size: x-small;">N: Navigate____________N:BACK N:DISTANCE N:DOWN N:FORWARD N:IN N:OUT N:ROUTE N:TO N:UP =9</span><br />
<span style="font-size: x-small;">O: Order_______________O:FIRST O:LAST O:NEXT O:PREVIOUS O:SECOND =5</span><br />
<span style="font-size: x-small;">#: ## Dawo-object ##___#:BATON #:LANG #:MILL #:PLACARD #:VALUE =5</span><br />
<span style="font-size: x-small;">€: Coding______________€:CODE €:INSTANCE =2</span><br />
<span style="font-size: x-small;">P: Phase_______________P:RUN P:START P:STOP =3</span><br />
<span style="font-size: x-small;">Q: Quest_______________Q:HOW-TO Q:QUEST =2</span><br />
<span style="font-size: x-small;">q: quantity____________q:ANY q:EMPTY q:HOW-MANY q:HOW-MUCH q:HOW-LONG q:ONLY q:ONE q:QUARTER =8</span><br />
<span style="font-size: x-small;">R: Resource____________R:AREA R:USED R:USAGE =3</span><br />
<span style="font-size: x-small;">Rx: Resource_special____=0</span><br />
<span style="font-size: x-small;">?: ? __?:CLIENT ?:FOR ?:NAME ?:QUIET ?:SECRET =5</span><br />
<span style="font-size: x-small;">&: & __=0</span><br />
<span style="font-size: x-small;">S: State_______________S:ABLE S:CLOSED S:NOT-USED S:OFF S:ON S:OPEN S:PROBLEM S:READY S:ROLE =9</span><br />
<span style="font-size: x-small;">s: speed_______________s:FAST s:SLOW =2</span><br />
<span style="font-size: x-small;">T: Time________________T:HIST T:NEW T:NOW T:OLD T:TOMORROW T:TODAY T:YESTERDAY =7</span><br />
<span style="font-size: x-small;">U: Unknown_____________=0</span><br />
<span style="font-size: x-small;">u: unknown_____________=0</span><br />
<span style="font-size: x-small;">V: Valuable____________V:HIGH V:LOL V:LOW V:MID =4</span><br />
<span style="font-size: x-small;">v: ValueLess___________=0</span><br />
<span style="font-size: x-small;">X: X or Yes___________X:ALLOW X:ASK X:BLOCKED X:GRANT X:MAYBE X:NO X:NOT X:VALID X:YES =9</span><br />
<span style="font-size: x-small;">Y: ____________________=0</span><br />
<span style="font-size: x-small;">Z: Z?__________________Z:ZEN Z:ZACHRA =2</span><br />
<span style="font-size: x-small;"><br /></span>
<span style="font-size: x-small;"><br /></span>HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-51610918579453648962017-11-07T14:41:00.002+02:002017-11-07T14:41:27.939+02:00Program and data files in dawo 0.0.5<h3 class="western">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;">code_snippets,
learn / copy-paste stuff:</span></span></h3>
<ul>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">aldente_func
: Simple functions, including some logical errors. Can you spot
errors?!</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">bat_loop
: Control flow structure samples.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">learn_stream_sync
: Examples of simple Streams. So. async stuff.</span></span></span></div>
</li>
</ul>
<h3 class="western" style="line-height: 125%; margin-bottom: 0.42cm; margin-top: 0.64cm;">
<a href="https://www.blogger.com/null" name="user-content-app-files"></a>
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;">app
files</span></span></h3>
<ul>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">base_lib
: Develop common properties, that other libraries should depend on.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">base_struct
: Structuring base classes. These two libraries do not depend other
dawo files.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">chore
: Start of bigger "job" / "chore" for
real-world-work. Imitating functionality of other, bigger, same kind
of library.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">connector.dart
Connecting ( as #client's) app - mission - chore together, mediating
them. Seeking deep, inner connections of objects.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">(?
dawlib_coll : Resources. Examples and hacking material of Dart
collections.)</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">dawo.dart
: main file, exports : dawo_src.dart.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">dawo_app
: DawoApp class, handles Missions and keeps out-put-buffers in Map.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">dawo_dev
: Classes and data, that help in developing this package. Helper
functions for cl (command line)and screen output.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">dawo_src
: File created by stagehand plugin app. Here it imports all other
libraries and gathers some information about them.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">effort.dart
: Human activities, chores sub, main user-activity and presentation.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">equipment.dart
: Controlling material resources for Mission and Chore.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">mill
: Plan: processing commands orderly, all they in row, by given
priorities.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">missions
: Chunk of command-processing between app and chore. Caring Chores.
Missions keep and process data ( #clay) of their favorite area.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">rumba.dart
: Rumba classes .dance method runs here dawo's control-flow (once).</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">shower.dart
: presentations on console, mostly box-shaped.</span></span></span></div>
</li>
<li>
<div style="margin-bottom: 0.42cm;">
<span style="color: #24292e;"><span style="font-family: apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;"><span style="font-size: 12pt;">tools
: Helper tools, sleep, stamps, lists aso.</span></span></span></div>
</li>
</ul>
<br />
<div style="line-height: 100%; margin-bottom: 0cm;">
<br />
</div>
HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-72546637043742512242017-11-07T09:42:00.002+02:002017-11-07T09:55:17.440+02:00Dawo 0.0.5 Connector, version 1, inspirational ideas for learning.<pre style="background-color: white;"><pre><span style="font-family: "courier new";">Beginner Dart programmer sketching class, that allows objects to
participate in #commonOperation, and connect to other objects there.
Project in early stage, a bunch of inspirational ideas, not meant
to be developed to production app. Learning process.</span></pre>
<pre><span style="font-family: "courier new";">Structure and documents of Connector class:</span></pre>
<pre><pre class="western" style="font-family: "courier new";"><span style="color: grey;"><span style="font-family: "courier new";"><i>/// * Usability: 7%</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// * Hist: hkl 10.9.2017 0.0.1 dawo/lib connector.dart</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>#name: connector ..is not nice. change to: ______ ??</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: grey;"><i>Connector is in deeply planning state. pp -mission - chore work </i></span></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: grey;"><i>together in same sphere, and there must be something, that they </i></span></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>have in common; abstraction layer, in which they must work together.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>* Every #little operation is "connector-operation", and connector has</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>knowledge for all of them and can interact with them.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>* Sending messages between objects. Stance, approach</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>* "Connector-operations" have access to certain up-level variables.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>* Using GlobalOpClass might be too heavy.!!</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>* ADD IS-GLOBAL bool field to Operation-classes.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>* Connector classes might have precedence in Mill-op.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>Might trig some action in their connected sister-operations.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>Find common interests, "I have been here".. follow-me, give-take</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>Other objects also handle things connected to this. So connector might</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>be just a simple message (plea) mediator.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>Global op does something</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>NOTE:</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>devNote: tracking begins.</i></span></span>
<span style="color: grey;"><i>// ***********************************************************************</i></span>
<span style="color: grey;"><i>/* connector: very weak idea, how to accomplish this. 10 %</i></span>
<span style="color: grey;"> <i>Not much of this functionality is yet done.</i></span>
<span style="color: grey;"> </span>
<span style="color: grey;"> <i>Name: #connector is not the right one. Not nice.</i></span>
<span style="color: grey;"> <i>#clients: = app - mission's - chore's</i></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>* Get "service calls" from #members: app - mission - chore; and </i></span></span>
<span style="color: grey;"><i>solve them.</i></span>
<span style="color: grey;"><i>* Have rules of privilege for precedence of missions - chores.</i></span>
<span style="color: grey;"><i>* Give TO > mill commands, "work-orders".</i></span>
<span style="color: grey;"><i>* Should have access to class-buffers to seek data.</i></span>
<span style="color: grey;"><i>* Special language #dawolang, to force commands to certain shape.</i></span>
<span style="color: grey;"><i>* #baton : to carry only-one-can-have-at-a-same-time magic thing.</i></span>
<span style="color: grey;"><i>*</i></span>
<span style="color: grey;"><i>* COMMAND ROLL:</i></span>
<span style="color: grey;"><i>* 1. get command, handle parameters.</i></span>
<span style="color: grey;"><i>* 2. Check command against rules. Take - return - reject.</i></span>
<span style="color: grey;"><i>* 3. Full-fill command; void obey(sender, receiver, baton, msg, flags)</i></span>
<span style="color: grey;"><i>* 4. Get answer, serve back.</i></span>
<span style="color: grey;"><i>* 5. Mark done.</i></span>
<span style="color: grey;"><i>*</i></span>
<span style="color: grey;"><i>* Questions:</i></span>
<span style="color: grey;"><i>* 1. Where do connector work? Is it upper-level loop?</i></span>
<span style="color: grey;"><i>* .. or is it available all the time. No need to wake it.</i></span>
<span style="color: grey;"><i>* 2. Where, how, and why is #connector invoked?</i></span>
<span style="color: grey;"><i>* 3. ?</i></span>
<span style="color: grey;"><i>*</i></span>
<span style="color: grey;"><i>* IDEA: All (commands) might happen in #mill. ( an order processor system ).</i></span>
<span style="color: grey;"><i>* IDEA: #Callback-like service calls.</i></span>
<span style="color: grey;"><i>* IDEA: #serviceKey #baton, that only one client can have at a time.</i></span>
<span style="color: grey;"><i>* IDEA: Privilege key.</i></span>
<span style="color: grey;"><i>*</i></span>
<span style="color: grey;"><i>* MAYBE: Incoming commands have certain form. Classes? Strings?</i></span>
<span style="color: grey;"><i>* MAYBE: Access to #GOAL aso. variables.</i></span>
<span style="color: grey;"><i>* MAYBE:</i></span>
<span style="color: grey;"><i>* MAYBE:</i></span>
<span style="color: grey;"><i>*</i></span>
<span style="color: grey;"><i>* NOT: Handle #area #resource #time #money aso. properties.</i></span>
<span style="color: grey;"><i>* NOT:</i></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>* NOT:</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>Properties and methods</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// This class gets same structure base, as other important classes.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Connecting clients (app-mission-chore) to work together.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>class </b></span>Connector <span style="color: navy;"><b>extends </b></span>BaseStruct {</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">String </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>name </b></span></span><span style="font-family: "courier new";">= </span><span style="color: green;"><span style="font-family: "courier new";"><b>'connector class'</b></span></span><span style="font-family: "courier new";">;</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">String </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>info </b></span></span><span style="font-family: "courier new";">= </span><span style="color: green;"><span style="font-family: "courier new";"><b>'connecting app - mission - chore together, mediating them'</b></span></span><span style="font-family: "courier new";">;</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">String </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>motto </b></span></span><span style="font-family: "courier new";">= </span><span style="color: green;"><span style="font-family: "courier new";"><b>'do my job, connector, mediates'</b></span></span><span style="font-family: "courier new";">;</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>/// devNote: PLAN: Two fields for to better shape outPut stuff in console.</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">String </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>seal</b></span></span><span style="font-family: "courier new";">; </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// like: ":CONNECTOR:";</i></span></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>/// emblem can be used in flowC</i></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">String </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>emblem </b></span></span><span style="font-family: "courier new";">= <span style="color: green;"><span style="font-family: "courier new";"><b>':con:X:'</b></span></span><span style="font-family: "courier new";">; <span style="color: grey;"><span style="font-family: "courier new";"><i>// or this emblem.</i></span></span></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">String </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>indent</b></span></span><span style="font-family: "courier new";">; </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// like: " "; 3-5-7 empty marks or something visible.</i></span></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// Like: ":ALLOW X :LOW Y :ROLE Z :GOAL XX :OPEN YY</i></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">String </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>clause</b></span></span><span style="font-family: "courier new";">; </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// Combination of #LANG words in sentence.</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">String </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>master</b></span></span><span style="font-family: "courier new";">; </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// Object that owns this.</i></span></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// Buffer inside class for output.</i></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">StringBuffer </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf </b></span></span><span style="font-family: "courier new";">= </span><span style="color: navy;"><span style="font-family: "courier new";"><b>new </b></span></span><span style="font-family: "courier new";">StringBuffer();</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Controlling connectors state, working-condition-state values.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";">bool <span style="color: #660e7a;"><b>offB </b></span>= <span style="color: navy;"><b>true</b></span>;</span></span>
<span style="color: black;"><span style="font-family: "courier new";">bool <span style="color: #660e7a;"><b>onB </b></span>= <span style="color: navy;"><b>false</b></span>;</span></span>
<span style="color: black;"><span style="font-family: "courier new";">bool <span style="color: #660e7a;"><b>pauseB</b></span>;</span></span>
<span style="color: black;"><span style="font-family: "courier new";">bool <span style="color: #660e7a;"><b>doneB </b></span>= <span style="color: navy;"><b>false</b></span>;</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// *****************************************************************</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// GlobalOperation ?* Using GlobalOpClass might be too heavy.!!</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// var msgBus * Sending messages between objects. Stance, approach</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// #New: #Gear Something turns around this.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// the sail pivots around the axis of a virtually static mast</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>var </b></span><span style="color: #660e7a;"><b>pivot</b></span>;</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// or: void metro() {} for putting messages to move.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// PING, Putting messages in queue or sending them immediately.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span>ping(<span style="color: navy;"><b>var </b></span>sender, <span style="color: navy;"><b>var </b></span>receiver, <span style="color: navy;"><b>var </b></span>key) {</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>/// code</i></span></span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Members, that are participating in this connector.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Member is a class in base_struct.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";">Map<String, Member> <span style="color: #660e7a;"><b>memberM </b></span>= {};</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// get / collect bindings</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Processes, that are bind inside connector.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><span style="color: black;">Map<String, Map<</span><span style="color: navy;"><b>dynamic</b></span><span style="color: black;">, </span><span style="color: navy;"><b>dynamic</b></span><span style="color: black;">>> </span><span style="color: #660e7a;"><b>bindingM </b></span><span style="color: black;">= {};</span></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>// Connect Members action to one or many other Members action.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";">String bind(<span style="color: navy;"><b>var </b></span>senderProcess, <span style="color: navy;"><b>var </b></span>receiverProcess, <span style="color: navy;"><b>var </b></span>thing) {</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>// Idea: Have some binding-models and types.</i></span></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// add / find from bindingM Map</i></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="color: navy;"><span style="font-family: "courier new";"><b>return </b></span></span><span style="color: green;"><span style="font-family: "courier new";"><b>'binding: #one to: #second'</b></span></span><span style="font-family: "courier new";">;</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Connector base activity, keep list of Members / their operations.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// devNote: Or should it be something smaller? abstract class BasePlacard?</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";">List<GlobalOpClass> <span style="color: #660e7a;"><b>opL </b></span>= <span style="color: navy;"><b>new </b></span>List();</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Join "clients" / Members to opList. placardM mediates necessary info.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span>opJoin(Map<String, String> plcM, String caller) {</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>/// Operations register to Connector with placardM.</i></span></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// 'actor': 'Chore',</i></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// 'sender': 'Chore instance',</i></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// 'receiver': '',</i></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// 'command': 'Ch-cmd:',</i></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// 'msg': 'Ch-msg:',</i></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// *******************************</i></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>/// code:</i></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">print(</span><span style="color: green;"><span style="font-family: "courier new";"><b>'-->>-->>-- :connector: C:</b></span></span><span style="font-family: "courier new";">$caller</span><span style="color: green;"><span style="font-family: "courier new";"> </span></span><span style="color: green;"><span style="font-family: "courier new";"><b>-->>-->>--'</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">print(info);</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">tl.operationMapPrint(plcM);</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">print(</span><span style="color: green;"><span style="font-family: "courier new";"><b>'--<<--<<-- :connector: done C:</b></span></span><span style="font-family: "courier new";">$caller</span><span style="color: green;"><span style="font-family: "courier new";"> </span></span><span style="color: green;"><span style="font-family: "courier new";"><b>--<<--<<--'</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Here goes normal init-build-roll-show-done -round. No loop.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Method for setting class field values to their run-time-values.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Called by: roll.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span><span style="color: black;">init() {</span></span></span>
<span style="color: black;"> <span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf</b></span></span><span style="font-family: "courier new";">.writeln(</span><span style="color: green;"><span style="font-family: "courier new";"><b>'--- Connector buffer output initialized ---'</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>// Set fields values.</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf</b></span></span><span style="font-family: "courier new";">.writeln(</span><span style="color: green;"><span style="font-family: "courier new";"><b>'init done'</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Method for setting class in working condition.</i></span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// CalledBy: roll.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span>build(String _emblem, String _master) {</span></span>
<span style="color: black;"> <span style="color: #660e7a;"><span style="font-family: "courier new";"><b>offB </b></span></span><span style="font-family: "courier new";">= </span><span style="color: navy;"><span style="font-family: "courier new";"><b>false</b></span></span><span style="font-family: "courier new";">; </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// off-state ends</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>onB </b></span></span><span style="font-family: "courier new";">= </span><span style="color: navy;"><span style="font-family: "courier new";"><b>true</b></span></span><span style="font-family: "courier new";">; </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// Connector is in on-state.</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf</b></span></span><span style="font-family: "courier new";">.writeln(</span><span style="color: green;"><span style="font-family: "courier new";"><b>'build done'</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// #run / roll method</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span>roll() {</span></span>
<span style="color: black;"> <span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf</b></span></span><span style="font-family: "courier new";">.writeln(</span><span style="color: green;"><span style="font-family: "courier new";"><b>'Connector:: </b></span></span><span style="font-family: "courier new";">$</span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>info</b></span></span><span style="color: green;"><span style="font-family: "courier new";"> </span></span><span style="color: green;"><span style="font-family: "courier new";"><b>:: roll engaged '</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">init(); </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// calling init and build methods in this class.</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// </i></span></span><span style="color: #0073bf;"><span style="font-family: "courier new";"><i><b>TODO connector Build parameters.</b></i></span></span></span>
<span style="color: black;"><span style="color: #0073bf;"> </span><span style="font-family: "courier new";">build(</span><span style="color: green;"><span style="font-family: "courier new";"><b>'*CONNECTOR:'</b></span></span><span style="font-family: "courier new";">, </span><span style="color: green;"><span style="font-family: "courier new";"><b>'CONNENCTORS-MASTER:'</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>// code for roll</i></span></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>// *** code missing, see on top of this file</i></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>//</i></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">show();</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">done();</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>// code here</i></span></span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Method for #Members to take part in common operations.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span>rollCommon() {</span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Gives members privileges in common operations..</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span>sharer() {</span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Presentation method.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span>show() {</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">print(</span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// close method</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span>done() {</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">print(</span><span style="color: green;"><span style="font-family: "courier new";"><b>'Connector:: </b></span></span><span style="font-family: "courier new";">$</span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>info</b></span></span><span style="color: green;"><span style="font-family: "courier new";"> </span></span><span style="color: green;"><span style="font-family: "courier new";"><b>:: engaged '</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>// code here</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf</b></span></span><span style="font-family: "courier new";">.write(</span><span style="color: green;"><span style="font-family: "courier new";"><b>'--- Connector buffer output app: done ---'</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">print(</span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"> <span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf</b></span></span><span style="font-family: "courier new";">.clear(); </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// empty buffer</i></span></span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<pre class="western" style="font-family: "courier new";"><span style="color: grey;"><span style="font-family: "courier new";"><i>And now section, that handles last small details:</i></span></span></pre>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>/// </i></span></span><span style="color: #0073bf;"><span style="font-family: "courier new";"><i><b>TODO Name for next 3 fields might be opTouche aso.</b></i></span></span></span>
<span style="color: black;"><span style="color: #0073bf;"> </span><span style="color: grey;"><span style="font-family: "courier new";"><i>/// Solve one unambiguous textual find-decide problem.</i></span></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>/// NOTE: might be separate Touche class.</i></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">String touch(String sender, String key, String source) {</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>// </i></span></span><span style="color: #0073bf;"><span style="font-family: "courier new";"><i><b>TODO problem</b></i></span></span></span>
<span style="color: black;"><span style="color: #0073bf;"> </span><span style="color: navy;"><span style="font-family: "courier new";"><b>return </b></span></span><span style="color: green;"><span style="font-family: "courier new";"><b>'solved:toucheStr: '</b></span></span><span style="font-family: "courier new";">;</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">}</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>/// Search big amount of #clay data for #customer:s key / order.</i></span></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>/// .. solve textual problems based on keywords / search in textual data</i></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>/// NOTE: might be separate Solver class.</i></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">String solve(String sender, String key, String source) {</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>// </i></span></span><span style="color: #0073bf;"><span style="font-family: "courier new";"><i><b>TODO problem</b></i></span></span></span>
<span style="color: black;"><span style="color: #0073bf;"> </span><span style="color: navy;"><span style="font-family: "courier new";"><b>return </b></span></span><span style="color: green;"><span style="font-family: "courier new";"><b>'solved: solveString'</b></span></span><span style="font-family: "courier new";">;</span></span>
<span style="color: black;"> <span style="font-family: "courier new";">}</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>/// </i></span></span><span style="color: #0073bf;"><span style="font-family: "courier new";"><i><b>TODO: connector one-time calls must have parameters;</b></i></span></span></span>
<span style="color: black;"><span style="color: #0073bf;"> </span><span style="color: grey;"><span style="font-family: "courier new";"><i>/// Sketching one-time commands, coming from clients.</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="color: navy;"><span style="font-family: "courier new";"><b>void </b></span></span><span style="font-family: "courier new";">obey(String sender, receiver, baton, msg) {</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>/// #baton to carry only-one-can-have-at-a-same-time magic thing</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// </i></span></span><span style="color: #0073bf;"><span style="font-family: "courier new";"><i><b>TODO code, badly missing</b></i></span></span></span>
<span style="color: black;"><span style="color: #0073bf;"> </span><span style="color: grey;"><span style="font-family: "courier new";"><i>// handle command / message</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">}</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>// *****************************************************************</i></span></span></span>
<span style="color: grey;"> </span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>/// Calling print/print-to-buffer function from base_lib.</i></span></span>
<span style="color: grey;"> <span style="font-family: "courier new";"><i>/// Getting local variables; Actor and Buffer right.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>void </b></span>flowC(String msg, bool p) {</span></span>
<span style="color: black;"> <span style="color: grey;"><span style="font-family: "courier new";"><i>/// Call flowServe with #LOCAL variables.</i></span></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">flowServe(</span><span style="color: green;"><span style="font-family: "courier new";"><b>':con:'</b></span></span><span style="font-family: "courier new";">, </span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>buf</b></span></span><span style="font-family: "courier new";">, msg, p);</span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// constructor</i></span></span>
<span style="color: black;"><span style="color: grey;"> </span><span style="font-family: "courier new";">Connector(</span><span style="color: navy;"><span style="font-family: "courier new";"><b>this</b></span></span><span style="font-family: "courier new";">.</span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>name</b></span></span><span style="font-family: "courier new";">, </span><span style="color: navy;"><span style="font-family: "courier new";"><b>this</b></span></span><span style="font-family: "courier new";">.</span><span style="color: #660e7a;"><span style="font-family: "courier new";"><b>info</b></span></span><span style="font-family: "courier new";">);</span></span>
<span style="color: black;"><span style="font-family: "courier new";">}</span></span>
<span style="color: grey;"><span style="font-family: "courier new";"><i>/// Create instance of Connector.</i></span></span>
<span style="color: black;"><span style="font-family: "courier new";"><span style="color: navy;"><b>var </b></span>con = <span style="color: navy;"><b>new </b></span>Connector(<span style="color: green;"><b>'DawoAppconnector'</b></span>, <span style="color: green;"><b>'Connection operations'</b></span>);</span></span>
<span style="color: black;">
</span></pre>
<pre class="western" style="font-family: "courier new";"><span style="color: black;">Chore calls this: </span>con.opJoin(<span style="color: #660e7a; font-family: "courier new"; font-weight: bold;">placardM</span><span style="font-family: "courier new";">, </span><span style="color: green; font-family: "courier new"; font-weight: bold;">':Chr:'</span><span style="font-family: "courier new";">);</span></pre>
<pre class="western" style="font-family: "courier new";"><pre style="font-family: "Courier New";"><span style="color: grey; font-style: italic;">/// Testing placardM inside chore.</span><span style="color: grey; font-style: italic;">/// Present info for outer process calls.</span></pre>
<pre style="font-family: "Courier New";">Map<String, String> <span style="color: #660e7a; font-weight: bold;">placardM </span>= {
<span style="color: green; font-weight: bold;">'actor'</span>: <span style="color: green; font-weight: bold;">'Chore'</span>,
<span style="color: green; font-weight: bold;">'sender'</span>: <span style="color: green; font-weight: bold;">'Chore instance'</span>,
<span style="color: green; font-weight: bold;">'receiver'</span>: <span style="color: green; font-weight: bold;">''</span>,
<span style="color: green; font-weight: bold;">'command'</span>: <span style="color: green; font-weight: bold;">'Ch-cmd:'</span>,
<span style="color: green; font-weight: bold;">'msg'</span>: <span style="color: green; font-weight: bold;">'Ch-msg:'</span>,
};</pre>
</pre>
<pre class="western" style="font-family: "courier new";"></pre>
</pre>
</pre>
HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-87713855448377182932017-10-16T18:46:00.003+03:002017-10-16T18:46:51.353+03:00Version 0.0.4 of Dartlang Dawo package is out: 16.10.2017..is out. The quest for clarity in the structure of the package, continues. Fine-tuning details in daily basis, and using dawo dev-notes to collect ideas and to track development of work. Stopping in #big areas, and presenting there only screen-full of random demo; that is our work-safe plan. Develop highly intelligent process-system, that is duty for other packages, not for dawo. Dawo is frames around ideas. Motto: do not take too big duties to yourself. Do not get lost in too big system; plan safe heavens there.<br />
<br />
3 days before publish went with little changes and I plan to keep 3 days off after publish, to free mind and get distance to pack. Reading meanwhile actively all kind of programming stuff. I have enough ideas to dawo for next 5 GitHub update sessions and all they seem interesting and meaningful. Dawo is on the track.<br />
<br />
Reading daily dartlang new stuff and talks is very interesting and educating. When you done it for years, it is getting new shapes: goals and phases in learning are more clear, and my vision inside language is changing. More clarity, more speed in reading. And now waiting Dart 2.0 .. <br />
<br />
Dawo still includes much mess, forgive that, but we really are in early stage. Reading code might be heavy, but each new commit will make it more clear.<br />
<br />
It seems to have taken for me years to reach this peaceful state of mind;<br />
1. Be patient, plan "dead-ends" where you can throw nice demo and leave actual production (of wanted action) to other packages that are more suited and more advanced.<br />
2. Trust yourself, and be happy of daily learning.<br />
<br />
About 10 improvements are on the table for next, 0.0.5 version. What is subject of days work, is most often question of intuition, and is resolved in minutes, when I study files. Removing tools to new tl-class will however be the first one. But first I'll take three days off.<br />
.<br />
<br />
<br />
<br />
<br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-63897949527352019892017-10-10T15:57:00.000+03:002017-10-10T15:57:43.919+03:00Nearing 0.0.4 version of dawo; tracking improvements.<table border="0" cellspacing="0">
<colgroup span="4" width="56"></colgroup>
<colgroup width="85"></colgroup>
<colgroup width="93"></colgroup>
<colgroup width="353"></colgroup>
<colgroup width="40"></colgroup>
<tbody>
<tr>
<td align="center" bgcolor="#DDDDDD" height="17">N:r</td>
<td align="center" bgcolor="#DDDDDD">DONE</td>
<td align="center" bgcolor="#DDDDDD">Value</td>
<td align="center" bgcolor="#DDDDDD">Effort</td>
<td align="center" bgcolor="#DDDDDD">AREA</td>
<td align="center" bgcolor="#DDDDDD">Vers</td>
<td align="left" bgcolor="#FFDAA2"><br /></td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="left" height="17"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="left" height="17"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" bgcolor="#FFF450" height="17">#28</td>
<td align="center">D: 0</td>
<td align="center">V: 7</td>
<td align="center">E: 2</td>
<td align="center">pub</td>
<td align="center">0.0.4</td>
<td align="left"> 'A. Publish version 0.0.4 to Pub 16.10.2017.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#1</td>
<td align="center">D: 0</td>
<td align="center">V: 4</td>
<td align="center">E: 6</td>
<td align="center">Lang</td>
<td align="center">0.0.4</td>
<td align="left" bgcolor="#FFDAA2">' * Fill #Word data to buff. 20-30 items of app roll.’</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#13</td>
<td align="center">D: 0</td>
<td align="center">V: 4</td>
<td align="center">E: 2</td>
<td align="center"> duration.'</td>
<td align="center">0.0.4</td>
<td align="left" bgcolor="#FFDAA2">' * Stamp time / Event-type’</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#6</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">Flow</td>
<td align="center">0.0.4</td>
<td align="left" bgcolor="#FDC578">' * Get flow-output’</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#2</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">Lang</td>
<td align="center">0.0.4</td>
<td align="left" bgcolor="#FCC79B"> * Seek StringBuffer</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#22</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 5</td>
<td align="center">dev</td>
<td align="center">0.0.4</td>
<td align="left">' * Present this map in sort-value order.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17"><br /></td>
<td align="center"><br /></td>
<td align="center"><br /></td>
<td align="center"><br /></td>
<td align="center"><br /></td>
<td align="center"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#19</td>
<td align="center">D: 9</td>
<td align="center">V: 6</td>
<td align="center">E: 5</td>
<td align="center"> Chore</td>
<td align="center"><b>0.0.4</b></td>
<td align="left">'DONE * Chore report boxed. Common Op Boxedl’</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#3</td>
<td align="center">D: 9</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">Style</td>
<td align="center">0.0.4</td>
<td align="left">'DON * Clean rest 7 of files for TODO and Notes.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#4</td>
<td align="center">D: 5</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">Show</td>
<td align="center">0.0.4</td>
<td align="left">'DONE Four box sided in devBox outPut.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#5</td>
<td align="center">D: 9</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">Flow</td>
<td align="center">0.0.4</td>
<td align="left">'DONE Empty all screen outPu tfor to get control on it-'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="left" height="17"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#7</td>
<td align="center">D: 8</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center"> boxed 2x2.'</td>
<td align="center">0.0.4</td>
<td align="left">'DON Mission report’</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#9</td>
<td align="center">D: 5</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">dev</td>
<td align="center">0.0.4</td>
<td align="left">'DO Dev-Notes’</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" bgcolor="#B2B2B2" height="17"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="left" bgcolor="#B2B2B2"><br /></td>
<td align="left" bgcolor="#B2B2B2"><br /></td>
</tr>
<tr>
<td align="center" height="17">#11</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">Lang</td>
<td align="center">0.0.5</td>
<td align="left"> '0.0.5 Word/ Lang. Create Lang class and methods.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#14</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center"> indexedDB</td>
<td align="center">0.0.5</td>
<td align="left"> '0.0.5 JSON</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#20</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">pB</td>
<td align="center">0.0.5</td>
<td align="left"> '0.0.5 Give pB -print variables in test-fileparameters.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#21</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">dev</td>
<td align="center">0.0.5</td>
<td align="left"> '0.0.5 Create #Issues list for dev.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#23</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">pub</td>
<td align="center">0.0.5</td>
<td align="left"> '0.0.5 6.11.2017 Version 0.0.5 Publish to Pub.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" bgcolor="#CCCCCC" height="17"><br /></td>
<td align="center" bgcolor="#CCCCCC"><br /></td>
<td align="center" bgcolor="#CCCCCC"><br /></td>
<td align="center" bgcolor="#CCCCCC"><br /></td>
<td align="center" bgcolor="#CCCCCC"><br /></td>
<td align="center" bgcolor="#CCCCCC"><br /></td>
<td align="left" bgcolor="#CCCCCC"><br /></td>
<td align="left" bgcolor="#CCCCCC"><br /></td>
</tr>
<tr>
<td align="center" height="17">#12</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center"> queue</td>
<td align="center">0.0.6</td>
<td align="left"> '0.0.6 Use set enum, queue typedef aso.</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#15</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center"> Stream</td>
<td align="center">0.0.6</td>
<td align="left"> '0.0.6 Async</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#17</td>
<td align="center">D: 1</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center"> Placard</td>
<td align="center">0.0.6</td>
<td align="left"> 'D 0.0.6 Opera - placard. To carry data inside operations.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#24</td>
<td align="center"><br /></td>
<td align="center"><br /></td>
<td align="center"><br /></td>
<td align="center">Mission</td>
<td align="center">0.0.6</td>
<td align="left">Mission: Switch-menu inside class for actions.</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#25</td>
<td align="center"><br /></td>
<td align="center"><br /></td>
<td align="center"><br /></td>
<td align="center">Chore</td>
<td align="center">0.0.6</td>
<td align="left">Chore: Switch-menu inside class for actions.</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" bgcolor="#B2B2B2" height="17"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="center" bgcolor="#B2B2B2"><br /></td>
<td align="left" bgcolor="#B2B2B2"><br /></td>
<td align="left" bgcolor="#B2B2B2"><br /></td>
</tr>
<tr>
<td align="center" height="17">#18</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">pB</td>
<td align="center">0.0.7</td>
<td align="left"> '0.0.7 Change all pB (print) val to int 0 2 4 6</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#27</td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="center"><b>Show</b></td>
<td align="center">0.0.7</td>
<td align="left"> '? ? - Resolve row-count / height.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#8</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">Show</td>
<td align="center">0.0.8</td>
<td align="left"> * Fine-Print-Map.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="left" height="17"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#10</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center"> add field</td>
<td align="center">???</td>
<td align="left"> '? ? Classes: field outBuf. Use in flow.'</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17">#16</td>
<td align="center">D: 0</td>
<td align="center">V: 3</td>
<td align="center">E: 3</td>
<td align="center">Render</td>
<td align="center" sdnum="1035;0;PP.KK.VV">’8.8.8</td>
<td align="left"> ' ? ? Render, make all them presentations.</td>
<td align="left"><br /></td>
</tr>
<tr>
<td align="center" height="17" valign="middle">#26</td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="left"><br /></td>
<td align="center">Unknown</td>
<td align="center" sdnum="1035;0;PP.KK.VV">’8.8.8</td>
<td align="left"> // TODO This kind of data might better be List<List<String>></td>
<td align="left"><br /></td>
</tr>
</tbody></table>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-59094755949859982652017-09-09T20:08:00.000+03:002017-09-09T20:08:14.989+03:00Tracking changes to versions 0.0.2 and 0.0.3 in Dart dawo package.Development of dawo package 2017 further from 0.0.1 version<br />
<br />
_____________________________________________________________________________<br />
Way to version 0.0.2, possible fixes: Will be bublished to Pub: 10.9.-15.9.2017<br />
<br />
1. DONE: Little roll / render example<br />
2. DONE Readme file, README.md, modified<br />
3. DONE Class constructors to every class<br />
<br />
4. __e_ Import / export usage unclear. Get all files in one command.<br />
- is analyzer acting weird? do not show variables (fast enough)<br />
<br />
5. DONE Make Stream-play (sync) / explore file. ( BOORING! ) no, it was interesting :)<br />
in code_snippets: learn_stream_sync<br />
<br />
6. DONE Base structure class that important classes extend<br />
- includes: - INIT-BUILD-ROLL-SHOW-DONE cycle<br />
<br />
7. DONE StringBuffers to every important class and file for output.<br />
- this also adds visibility for variable-name<br />
<br />
8. _h__ Start: Connector-class; Connect App-Mission-Chore classes functionality in mill-process<br />
- in this phase this is gonna be very elementary, schematic<br />
- At the end this is fine-graded and long development plan. ( DIFFICULT :( )<br />
<br />
9. DONE created DawoDewTest class in dawo_dew<br />
<br />
10. DONE Add generic lists for every meaningful member<br />
* like: List<CommonChore> choreL = []<br />
* add usage later<br />
<br />
_____________________________________________________________________________<br />
<br />
<br />
Version NEXT: 0.0.3 aso. Plan.<br />
<br />
3.1 ____ Active "Rumba" flow / -example<br />
- app / mission / chore all working together<br />
<br />
3.2 ____ Fill generic lists with members<br />
Use generic lists inside classes for to control their "sub-ordinates"<br />
dawoApp has: missionL<Mission><br />
mission has choreL<Chore><br />
Roll methods for them<br />
<br />
3.3 ____ roll counters to app, mission, chore, mill<br />
<br />
3.4 ____ render ( = test, presentation and quick-note function) to every file<br />
<br />
3,5 ____ dev class. dev tester person<br />
-every file imports dev, and can add dev-notes<br />
<br />
3.6 ____ Team notes (List and maps) maybe: in clay_in folder = incoming data<br />
* not yet clear idea, how this must be done<br />
<br />
3.7 ____ incoming data in clay-folder<br />
* dev data<br />
* political-data (test-case)<br />
<br />
3.8 ____ outGoing data methods in clayOut-folder<br />
<br />
3.9 ____ sketch base_lib functionality<br />
<br />
3.10 ____ separate learnLib with 3 files.<br />
<br />
<br />
_________________________________________________________________________<br />
<br />
Version NEXT: 0.0.4 aso<br />
<br />
Working rumba is mark for 0.1.0 version<br />
<br />
_________________________________________________________________________Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-32109773597271227022017-09-06T07:54:00.003+03:002017-09-06T08:15:13.582+03:00Publishing package dawo first real version in pub dartlang org<br />
To see own package in pub is glorious, crossdart ( hyper-linked source code ) is deeply elegant to display source code, api docs is behind the link and link to github code, it is all there.Very elegant system, and now it is easy to start using dawo, and further it's development. Dry-publish was good to practice publishing. A very exciting event all over the place!<br />
Code is all written about 2-3 years ago, so it is really elementary "beginners code".<br />
And Dart's package system is deeply elegant and effective.<br />
Picture of publishing event in windows cl window:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbg0shKqZ5QyW1FnmIutuBLcwBXJMzd0pYFZZh_W7wOxP8kNdtgCJ6zRRdp60hWURJDg9sVysQXUdR-XkGrpnh_dijYdqGeM5u27Ci4g8-7sH31WqDaaockUoh4fAWMfufv2d6ba5lbdd1/s1600/pub_publish_0.0.1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="600" data-original-width="446" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbg0shKqZ5QyW1FnmIutuBLcwBXJMzd0pYFZZh_W7wOxP8kNdtgCJ6zRRdp60hWURJDg9sVysQXUdR-XkGrpnh_dijYdqGeM5u27Ci4g8-7sH31WqDaaockUoh4fAWMfufv2d6ba5lbdd1/s640/pub_publish_0.0.1.PNG" width="474" /></a></div>
<br />
One file is missing, I think hist.txt was left in my dawo_old folder. Shall add it here.<br />
Publish event was very fast and I can see my package and all links there in minutes.<br />
Crossdart took a little longer. Bot tracking additions to pub.<br />
Development line seems now quite clear.<br />
<br />
<br />HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-81153753483242068882017-09-04T17:12:00.002+03:002017-09-05T02:57:34.713+03:00Beginner Dart programmers kickoff to develop a glorious pub package; dawodawo package in github renewed; deleted and pushed again, to get folders aso. right.<br />
Code: <a href="https://github.com/heiklap/dawo">https://github.com/heiklap/dawo</a> Here are first issues:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLyGKkW_ZOlC4sr2fCxbHS3dLn3CXJ1zMqd2cs7z-cv2vXDXrVoF9eMdYO319tFsAV5tG9ggOf9eFlFfLpC_rTJPW3cuzC0mTsW-j-bVXPEMleZntIGfcn1ITyYl33dXy49Ihpn61UVVQ/s1600/dawo_issues_first5.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="553" data-original-width="998" height="221" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLyGKkW_ZOlC4sr2fCxbHS3dLn3CXJ1zMqd2cs7z-cv2vXDXrVoF9eMdYO319tFsAV5tG9ggOf9eFlFfLpC_rTJPW3cuzC0mTsW-j-bVXPEMleZntIGfcn1ITyYl33dXy49Ihpn61UVVQ/s400/dawo_issues_first5.PNG" width="400" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
Mostly very elementary, simple data, little messy. Purpose is to document beginners steps, when developing a package. Next: choose where to head, what to take in and what to leave out.<br />
<br />
An interesting and challenging journey is ahead.<br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-26793161579101443992017-08-19T20:17:00.000+03:002017-08-19T20:22:19.014+03:00Small note / short-hand descriptions of Dart Core Api <br />
<div style="text-align: center;">
<b><span style="font-size: large;">Dartlang Core-Api</span></b></div>
CONSTANTS<br />
deprecated deprecated = const Deprecated("next release")<br />
override marks an instance member as overriding a superclass member with the<br />
same name.<br />
proxy marks a class as implementing members dynamically through<br />
noSuchMethod<br />
TYPEDEFS<br />
Comparator The signature of a generic comparison function.<br />
FUNCTIONS<br />
identical Check whether two references are to the same object.<br />
identityHashCode <b>External</b> : src: Returns the identity hash code of object.<br />
print Prints a string representation of the object to the console.<br />
<br />
Note: 4 <b>external</b> source's in <b>object</b>.<br />
<style type="text/css"><!--td {border: 1px solid #ccc;}br {mso-data-placement:same-cell;}--></style><br />
<table border="1" cellpadding="0" cellspacing="0" dir="ltr" style="border-collapse: collapse; border: none; font-family: arial,sans,sans-serif; font-size: 10pt; table-layout: fixed; width: 0px;" xmlns="http://www.w3.org/1999/xhtml"><colgroup><col width="142"></col><col width="402"></col></colgroup><tbody>
<tr style="height: 21px;"><td style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;"></td><td data-sheets-value="{"1":2,"2":"Source / explanation"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Source / explanation</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"METHODS"}" style="font-weight: bold; overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">METHODS</td><td style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Object: noSuchMethod"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Object: noSuchMethod</td><td data-sheets-value="{"1":2,"2":"external dynamic noSuchMethod(Invocation invocation);"}" style="background-color: white; font-family: Arial; overflow: hidden; padding: 2px 3px; vertical-align: bottom;"><b>external</b> : dynamic noSuchMethod(Invocation invocation);</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Object: toString"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Object: toString</td><td data-sheets-value="{"1":2,"2":"external String toString();"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;"><b>external : </b>String toString();</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"PROPERTIES"}" style="font-weight: bold; overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">PROPERTIES</td><td style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Object: hashCode"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Object: hashCode</td><td data-sheets-value="{"1":2,"2":"external int get hashCode;"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;"><b>external</b> : int get hashCode;</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Object: runtimeType"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Object: runtimeType</td><td data-sheets-value="{"1":2,"2":"external Type get runtimeType;"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;"><b>external</b> T: ype get runtimeType;</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"CLASSES"}" style="font-weight: bold; overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">CLASSES</td><td style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"BidirectionalIterator"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">BidirectionalIterator</td><td data-sheets-value="{"1":2,"2":"An Iterator that allows moving backwards as well as forwards."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">An Iterator that allows moving backwards as well as forwards.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"bool"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">bool</td><td data-sheets-value="{"1":2,"2":"The reserved words true and false denote objects that are the only instances of this class."}" style="overflow: visible; padding: 2px 3px 2px 3px; vertical-align: bottom;"><div style="left: 3px; overflow: hidden; position: relative; white-space: nowrap; width: 599px;">
<div style="float: left;">
The reserved words true and false denote objects that are the only instances of this class.</div>
</div>
</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Comparable"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Comparable</td><td data-sheets-value="{"1":2,"2":"Interface used by types that have an intrinsic ordering"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Interface used by types that have an intrinsic ordering</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"DateTime"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">DateTime</td><td data-sheets-value="{"1":2,"2":"An instant in time, such as July 20, 1969, 8:18pm GMT."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">An instant in time, such as July 20, 1969, 8:18pm GMT.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Deprecated"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Deprecated</td><td data-sheets-value="{"1":2,"2":"The annotation @Deprecated('expires when') marks a feature as deprecated."}" style="overflow: visible; padding: 2px 3px 2px 3px; vertical-align: bottom;"><div style="left: 3px; overflow: hidden; position: relative; white-space: nowrap; width: 498px;">
<div style="float: left;">
The annotation @Deprecated('expires when') marks a feature as deprecated.</div>
</div>
</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"double"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">double</td><td data-sheets-value="{"1":2,"2":"A double-precision floating point number."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">A double-precision floating point number.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Duration"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Duration</td><td data-sheets-value="{"1":2,"2":"A span of time, such as 27 days, 4 hours, 12 minutes, and 3 seconds."}" style="overflow: visible; padding: 2px 3px 2px 3px; vertical-align: bottom;"><div style="left: 3px; overflow: hidden; position: relative; white-space: nowrap; width: 498px;">
<div style="float: left;">
A span of time, such as 27 days, 4 hours, 12 minutes, and 3 seconds.</div>
</div>
</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Expando"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Expando</td><td data-sheets-value="{"1":2,"2":"An Expando allows adding new properties to objects."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">An Expando allows adding new properties to objects.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Function"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Function</td><td data-sheets-value="{"1":2,"2":"The base class for all function types."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">The base class for all function types.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"int"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">int</td><td data-sheets-value="{"1":2,"2":"An arbitrarily large integer."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">An arbitrarily large integer.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Invocation"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Invocation</td><td data-sheets-value="{"1":2,"2":"Representation of the invocation of a member on an object."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Representation of the invocation of a member on an object.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Iterable"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Iterable</td><td data-sheets-value="{"1":2,"2":"A collection of values, or \"elements\", that can be accessed sequentially."}" style="overflow: visible; padding: 2px 3px 2px 3px; vertical-align: bottom;"><div style="left: 3px; overflow: hidden; position: relative; white-space: nowrap; width: 498px;">
<div style="float: left;">
A collection of values, or "elements", that can be accessed sequentially.</div>
</div>
</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Iterator"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Iterator</td><td data-sheets-value="{"1":2,"2":"An interface for getting items, one at a time, from an object."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">An interface for getting items, one at a time, from an object.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"List"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">List</td><td data-sheets-value="{"1":2,"2":"An indexable collection of objects with a length."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">An indexable collection of objects with a length.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Map"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Map</td><td data-sheets-value="{"1":2,"2":"An collection of key-value pairs, from which you retrieve a value using its associated key."}" style="overflow: visible; padding: 2px 3px 2px 3px; vertical-align: bottom;"><div style="left: 3px; overflow: hidden; position: relative; white-space: nowrap; width: 599px;">
<div style="float: left;">
An collection of key-value pairs, from which you retrieve a value using its associated key.</div>
</div>
</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Match"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Match</td><td data-sheets-value="{"1":2,"2":"A result from searching within a string."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">A result from searching within a string.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Null"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Null</td><td data-sheets-value="{"1":2,"2":"The reserved word null denotes an object that is the sole instance of this class."}" style="overflow: visible; padding: 2px 3px 2px 3px; vertical-align: bottom;"><div style="left: 3px; overflow: hidden; position: relative; white-space: nowrap; width: 498px;">
<div style="float: left;">
The reserved word null denotes an object that is the sole instance of this class.</div>
</div>
</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"num"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">num</td><td data-sheets-value="{"1":2,"2":"An integer or floating-point number."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">An integer or floating-point number.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Object"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;"><b>Object</b></td><td data-sheets-value="{"1":2,"2":"The base class for all Dart objects."}" style="background-color: white; color: #212121; font-family: Roboto; font-size: 11pt; overflow: hidden; padding: 2px 3px; vertical-align: bottom;"><b>The base class for all Dart objects.</b></td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Pattern"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Pattern</td><td data-sheets-value="{"1":2,"2":"An interface for basic searches within strings."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">An interface for basic searches within strings.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"RegExp"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">RegExp</td><td data-sheets-value="{"1":2,"2":"A regular expression pattern."}" style="background-color: white; color: #212121; font-family: Roboto; font-size: 11pt; overflow: hidden; padding: 2px 3px; vertical-align: bottom;">A regular expression pattern.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"RuneIterator"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">RuneIterator</td><td data-sheets-value="{"1":2,"2":"Iterator for reading runes (integer Unicode code points) out of a Dart string."}" style="overflow: visible; padding: 2px 3px 2px 3px; vertical-align: bottom;"><div style="left: 3px; overflow: hidden; position: relative; white-space: nowrap; width: 498px;">
<div style="float: left;">
Iterator for reading runes (integer Unicode code points) out of a Dart string.</div>
</div>
</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Runes"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Runes</td><td data-sheets-value="{"1":2,"2":"The runes (integer Unicode code points) of a String."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">The runes (integer Unicode code points) of a String.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Set"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Set</td><td data-sheets-value="{"1":2,"2":"A collection of objects in which each object can occur only once"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">A collection of objects in which each object can occur only once</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Sink"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Sink</td><td data-sheets-value="{"1":2,"2":"A generic destination for data."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">A generic destination for data.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"StackTrace"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">StackTrace</td><td data-sheets-value="{"1":2,"2":"An interface implemented by all stack trace objects."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">An interface implemented by all stack trace objects.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Stopwatch"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Stopwatch</td><td data-sheets-value="{"1":2,"2":"A simple stopwatch interface to measure elapsed time."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">A simple stopwatch interface to measure elapsed time.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"String"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">String</td><td data-sheets-value="{"1":2,"2":"A sequence of characters."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">A sequence of characters.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"StringBuffer"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">StringBuffer</td><td data-sheets-value="{"1":2,"2":"A class for concatenating strings efficiently."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">A class for concatenating strings efficiently.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"StringSink"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">StringSink</td><td data-sheets-value="{"1":2,"2":"Implemented by ClosableStringSink IOSink StringBuffer"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Implemented by ClosableStringSink IOSink StringBuffer</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Symbol"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Symbol</td><td data-sheets-value="{"1":2,"2":"Opaque name used by mirrors, invocations and Function.apply."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Opaque name used by mirrors, invocations and Function.apply.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Type"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Type</td><td data-sheets-value="{"1":2,"2":"Runtime representation of a type."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Runtime representation of a type.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"Uri"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">Uri</td><td data-sheets-value="{"1":2,"2":"A parsed URI, such as a URL."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">A parsed URI, such as a URL.</td></tr>
<tr style="height: 21px;"><td data-sheets-value="{"1":2,"2":"UriData"}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">UriData</td><td data-sheets-value="{"1":2,"2":"A way to access the structure of a data: URI."}" style="overflow: hidden; padding: 2px 3px 2px 3px; vertical-align: bottom;">A way to access the structure of a data: URI.</td></tr>
</tbody></table>
<br />
<div>
Collected from: <a href="https://api.dartlang.org/stable/1.24.2/dart-core/dart-core-library.html">https://api.dartlang.org/stable/1.24.2/dart-core/dart-core-library.html</a></div>
<div>
This table is created in GoogleDocs. Funny to see how nicely Docs/blogger</div>
<div>
treats over-long rows of text.</div>
<div>
.</div>
HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-49723614751451226132015-12-08T17:56:00.001+02:002015-12-11T11:39:20.242+02:00Thin exnsions to my Dipp Dart app; and: creating common methods.<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;"><b>Certain phase</b> in building my Dipp app: now I think to be ready for to build my first big app. Actually I need this for my learning; otherwise I might get stucked, and this brings some discipline here. </span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;"><b>What?</b> I'm building very thin, elementary and quick expansions (1-24) to Dipp. This "tree" is meant to be thin, for to avoid burden, which might come, when is time to make big fundamental changes. I hope to avoid later big changes, if I create in early phase some common-use methods and classes. </span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;"><b>How am I here</b>? Hard work, many erros, stupid slowness... and unwillingness to read howTo:s. <b>Project Dipp</b> seems right way to test-learn, and maybe -leave- it at any minute, if it feels so. Route is more important than goal. </span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;">
</span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;">How long <b>will it be fun</b>? Small steps policy... yep.. it means fun forever.</span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;">
</span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;"><b>How is this work done?</b> Very patiently and slowly, one step at a time. One happy hour a day.. at least. None of those 1-24 phases should take more than an hour to complete, by an exprerienced Dart programmer (not me).</span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;">
</span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;"><b>How thin are they?</b> Hermes might be just to check, that words in streams belong to 170-words lists. Server and-client parts: ready code examples with one default answer. Some might be just: -Not Ready Yet. HTTP requests are simple.. aso.</span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;">
</span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;">
</span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;"><span style="color: grey; font-style: italic;">/// dipp development flow plan</span>List dppDevPlanL = [</span> </pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span style="color: green; font-weight: bold;"> '1 Rondo everywhere and loopRun, runAll show sleep'</span>,
<span style="color: green; font-weight: bold;">'2 Main and Side Data'</span>,
<span style="color: green; font-weight: bold;">'3 CL Boxes'</span>,
<span style="color: green; font-weight: bold;">'4 Web Dom / Rondo'</span>,
<span style="color: green; font-weight: bold;">'5 UP-comXX commands'</span>,
<span style="color: green; font-weight: bold;">'6 '</span>,
<span style="color: green; font-weight: bold;">'7 Stream Connection'</span>,
<span style="color: green; font-weight: bold;">'8 StringBuffer connection Buffalo'</span>,
<span style="color: green; font-weight: bold;">'9 Labor data'</span>,<span class="im" style="color: #500050;">
<span style="color: green; font-weight: bold;">'10 Plugins and their data'</span>,</span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><span class="im" style="color: #500050;">
</span> <span style="color: green; font-weight: bold;">'11 Flags, ables'</span>,
<span style="color: green; font-weight: bold;">'12 Zyld, structures'</span>,
<span style="color: green; font-weight: bold;">'13 Hermes'</span>,
<span style="color: green; font-weight: bold;">'14 Hermit '</span>,
<span style="color: green; font-weight: bold;">'15 Webster DB Mongo'</span>,
<span style="color: green; font-weight: bold;">'16 Webster List, text '</span>,
<span style="color: green; font-weight: bold;">'17 Work, tools, effort'</span>,
<span style="color: green; font-weight: bold;">'18 Ideas, learn, funny'</span>,
<span style="color: green; font-weight: bold;">'19 '</span>,
<span style="color: green; font-weight: bold;">'20 HTTP data'</span>,
<span style="color: green; font-weight: bold;">'21 Asker server'</span>,
<span style="color: green; font-weight: bold;">'22 Asker client'</span>,
<span style="color: green; font-weight: bold;">'23 async version'</span>,
<span style="color: green; font-weight: bold;">'24 '</span>];</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><b>About Dipp app</b>: Dipp is for collecting and presenting information in various ways.</pre>
<pre><span style="font-family: "courier new";"><span style="background-color: white; font-size: 9pt; white-space: pre-wrap;">About 50 classes are grouped under control of 4 main classes: </span></span><b style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">DippApp</b><span style="font-family: "courier new";"><span style="background-color: white; font-size: 9pt; white-space: pre-wrap;">,wich keeps plugins and extras. </span></span><b style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">Venue</b><span style="font-family: "courier new";"><span style="background-color: white; font-size: 9pt; white-space: pre-wrap;">,is like theatre where main flow happends, aso. </span></span><b style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">Parade</b><span style="font-family: "courier new";"><span style="background-color: white; font-size: 9pt; white-space: pre-wrap;">,which presents </span></span><b style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">Frames</b><span style="font-family: "courier new";"><span style="background-color: white; font-size: 9pt; white-space: pre-wrap;">. <b>Worker</b> package is used in Hermit class.</span></span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"> </pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"><b>Dipp has 4 main parts / ideas</b>:</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">1. <b>Plugins</b>, that give extra functionality and data to other apps</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">2. Human / <b>labor</b> like entities, that have their own nature, like <b>Newton</b>.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">3. <b>Main data-flow</b> and <b>UNLRS-class</b> which gives main functionality to central Dipp classes. </pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">4. <b>Extra</b>-functionality under DipApp; Server-client-DB-connections-HTTP aso. </pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">Basic class is <span style="font-size: 9pt;"><b>UNLRS</b>. <b>Upper-Name-loop-run-show</b> class, which gives much of needed ability to main classes, to run, handle and present their data and show statistic info.</span><span style="font-size: 9pt;"> </span></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">1. <b>Rondo</b> is common run-method, which gets much automation from UNLRS-class.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">5. up-comXX are 2-letter common upper-level variables. Editor can easy find them.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">7.8. <b>StreamConnection</b> and <b>StringBuffer connections</b> from inside UNLRS class.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">9.<b>Labor</b> is about human - worker like objects that have their own nature and interests.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">10. <b>Plugins</b>. In this state is plan to make one of 10:s ready.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">11. <b>Flags</b> control some <b>abilities</b> that objects has. I love bits "0100 1011 11", but they might be too difficult, compared to booleans.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">12. Zyld is <b>data cylinder</b>. Just a plain idea for now.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">13. <b>Hermes</b> is big plan, "<b>Gods messenger</b>" with it's <b>own language</b> handling messages between objects.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">14. <b>Hermit is isolates, threads</b>.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">15.16. <b>Webster</b> is about Databse,Mongo and simpler data</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">17. Work, tools effort are some extra folders and files.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">18. Ideas - learn, funny... nmore folders with ideas.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">20. <b>HTTP</b> data. Objects might have every their own data in the web for daily search.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">21.22. <b>Asker is server-client</b> system for objects data. Plan: Copy-paste from Dartlang.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">23. Quick <b>async</b>-version in just one tiny web file.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">24. More ideas to come</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">
</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">And <b>common methods, which are to be developed here</b>. What might they be?</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">1. Complicated function for giving access to Streams from inside a class.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">2. Same with StringBuffer. Remember; Dart do not have nested classes.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">3. Presenting "List lof Data" in "List Of Screen Dom elements".</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">4. Handling bit-data and developing bit tables / booleans.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">5. Common methods for seeking data from diff sources and storing it.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">6. Some more sophisticated base-classes for special cases.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">7. more...</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">8. ...And more... </pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">
</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">And: also these must be very thin and schematic.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">
</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;">And some routines / basic elements for web programming.</pre>
<pre style="background-color: white; font-family: 'Courier New'; font-size: 9pt; white-space: pre-wrap;"></pre>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-42438826053777964192015-02-14T19:25:00.001+02:002015-02-15T12:33:21.968+02:00Explanations of methods and properties in Dart HttpClient class. With some notes.<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="background-color: white; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Building Dart clients: Same post as previous one, but with explanations: </span></span><br />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Some notes of Dart HttpClient class for to help implementing, hacking it. Source: </span><br />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 15px; line-height: 19px;"><span style="color: #484848; font-family: Roboto, sans-serif;"><a href="https://api.dartlang.org/apidocs/channels/stable/dartdoc-viewer/dart:io.HttpClient" style="color: #888888; text-decoration: none;">https://api.dartlang.org/apidocs/channels/stable/dartdoc-viewer/dart:io.HttpClient</a></span></span><br />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">This is meant to serve as notebook..</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.authenticate;</span><br />
<span style="background-color: white; font-family: Roboto, sans-serif; font-size: 15px; line-height: 19px;">Add credentials to be used for authorizing HTTP requests.</span><br />
<span style="background-color: white; font-family: Roboto, sans-serif; font-size: 15px; line-height: 19px;"><br /></span>
<span style="font-family: Roboto, sans-serif;"><span style="font-size: 15px; line-height: 19px;">set authenticate(Function Future<bool> f(Uri url, String scheme, String realm))</span></span><br />
<span style="font-family: Roboto, sans-serif;"><span style="font-size: 15px; line-height: 19px;">Sets the function to be called when a site is requesting authentication. The URL requested and the security realm from the server are passed in the arguments url and realm.</span></span><br />
<span style="font-family: Roboto, sans-serif;"><span style="font-size: 15px; line-height: 19px;"> The function returns a Future which should complete when the authentication has been resolved. If credentials cannot be provided the Future should complete with false. If credentials are available the function should add these using addCredentials before completing the Future with the value true.</span></span><br />
<span style="font-family: Roboto, sans-serif;"><span style="background-color: white; font-size: 15px; line-height: 19px;"></span></span><br />
<span style="font-family: Roboto, sans-serif;"><span style="font-size: 15px; line-height: 19px;">If the Future completes with true the request will be retried using the updated credentials. Otherwise response processing will continue normally.</span></span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.authenticateProxy; LONG!!: </span><br />
<span style="background-color: white; font-family: Roboto, sans-serif; font-size: 15px; line-height: 19px;">Add credentials to be used for authorizing HTTP proxies.</span><br />
<span style="font-family: Roboto, sans-serif;"><span style="font-size: 15px; line-height: 19px;">set authenticateProxy(Function Future<bool> f(String host, int port, String scheme, String realm))</span></span><br />
<span style="background-color: white; font-family: Roboto, sans-serif; font-size: 15px; line-height: 19px;"><br /></span>
<br />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.autoUncompress; </span>LONG: <br />
bool autoUncompress : <br />
Get and set whether the body of a response will be automatically uncompressed.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.badCertificateCallback; </span> LONG: <br />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.badCertificateCallback( callback(X509Certificate, String, int) → bool)</span><br />
set badCertificateCallback(Function bool callback(X509Certificate cert, String host, int port))<br />
Sets a callback that will decide whether to accept a secure connection with a server certificate that cannot be authenticated by any of our trusted root certificates. <br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.findProxy; Long explanation....</span><br />
<span style="background-color: white; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"><span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;">set findProxy(Function String f(Uri url))</span></span><br />
static String findProxyFromEnvironment(Uri url, {Map<String, String> environment})<br />
Function for resolving the proxy server to be used for a HTTP connection from the proxy configuration specified through environment variables.<br />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.findProxy( f(Uri) → String);</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.hashCode;</span><br />
int get hashCode<br />
Inherited from Object. Get a hash code for this object.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.idleTimeout;</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Duration idleTimeout </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Get and set the idle timeout of non-active persistent (keep-alive) connections. The default value is 15 seconds.</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.maxConnectionsPerHost;</span><br />
int maxConnectionsPerHost. Get and set the maximum number of live connections, to a single host.<br />
Increasing this number may lower performance and take up unwanted system resources.<br />
To disable, set to null. Default is null.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.runtimeType;</span><br />
Type get runtimeType. Inherited from Object.<br />
A representation of the runtime type of the object.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.userAgent;</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">String userAgent. </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Set and get the default value of the User-Agent header for all requests generated by this HttpClient. The default value is Dart/<version> (dart:io).</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">If the userAgent is set to null, no default User-Agent header will be added to each request.</span></span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.addCredentials(url, realm, credentials);</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">void addCredentials(Uri url, String realm, HttpClientCredentials credentials)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Add credentials to be used for authorizing HTTP requests.</span></span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.addProxyCredentials(host, port, realm, credentials);</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">void addCredentials(Uri url, String realm, HttpClientCredentials credentials)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="background-color: white; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"></span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Add credentials to be used for authorizing HTTP requests.</span></span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.close();</span><br />
Shutdown the HTTP client. If force is false (the default) the HttpClient will be kept alive until all active connections are done. If force is true any active connections will be closed to immediately release all resources. These closed connections will receive an onError callback to indicate that the client was shutdown. In both cases trying to establish a new connection after calling shutdown will throw an exception.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.delete(host, port, path);</span><br />
Future<HttpClientRequest> delete(String host, int port, String path)<br />
Opens a HTTP connection using the DELETE method.<br />
The server is specified using host and port, and the path (including possible fragment and query) is specified using path. See open for details.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.deleteUrl(url);</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Future<HttpClientRequest> deleteUrl(Uri url)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Opens a HTTP connection using the DELETE method. </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The URL to use is specified in url.</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.get(host, port, path);</span><br />
Future<HttpClientRequest> get(String host, int port, String path)<br />
Opens a HTTP connection using the GET method. The server is specified using host and port, and the path (including possible fragment and query) is specified using path.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.getUrl(url);</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Future<HttpClientRequest> getUrl(Uri url)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Opens a HTTP connection using the GET method. </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The URL to use is specified in url.</span><br />
<span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"><br /></span>
<span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"><br /></span>
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.hashCode;</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.head(host, port, path);</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Future<HttpClientRequest> head(String host, int port, String path)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Opens a HTTP connection using the HEAD method. </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The server is specified using host and port, and the path (including possible fragment and query) is specified using path.</span><br />
<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.headUrl(url);</span><span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Future<HttpClientRequest> headUrl(Uri url)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Opens a HTTP connection using the HEAD method. </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The URL to use is specified in url.</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.noSuchMethod(invocation);</span><span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">noSuchMethod is invoked when users invoke a non-existent method on an object. The name of the method and the arguments of the invocation are passed to noSuchMethod in an Invocation. If noSuchMethod returns a value, that value becomes the result of the original invocation.</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The default behavior of noSuchMethod is to throw a NoSuchMethodError.</span></span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.open(method, host, port, path)</span><br />
Future<HttpClientRequest> open(String method, String host, int port, String path)<br />
Opens a HTTP connection.<br />
The HTTP method to use is specified in method, the server is specified using host and port, and the path (including possible fragment and query) is specified using path.<br />
The Host header for the request will be set to the value host:port. This can be overridden through the HttpClientRequest interface before the request is sent. NOTE if host is an IP address this will still be set in the Host header.<br />
For additional information on the sequence of events during an HTTP transaction, and the objects returned by the futures, see the overall documentation for the class HttpClient.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.openUrl(method, url);</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Future<HttpClientRequest> openUrl(String method, Uri url)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Opens a HTTP connection. </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The HTTP method is specified in method and the URL to use in url.</span><br />
<span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The Host header for the request will be set to the value host:port. This can be overridden through the HttpClientRequest interface before the request is sent. NOTE if host is an IP address this will still be set in the Host header.</span><br />
<span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">For additional information on the sequence of events during an HTTP transaction, and the objects returned by the futures, see the overall documentation for the class HttpClient.</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.patch(host, port, path);</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Future<HttpClientRequest> patch(String host, int port, String path)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Opens a HTTP connection using the PATCH method. </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The server is specified using host and port, and the path (including possible fragment and query) is specified using path.</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.patchUrl(url);</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Future<HttpClientRequest> patchUrl(Uri url)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Opens a HTTP connection using the PATCH method. </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The URL to use is specified in url.</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.post(host, port, path)</span><br />
Future<HttpClientRequest> post(String host, int port, String path)<br />
Opens a HTTP connection using the POST method. The server is specified using host and port, and the path (including possible fragment and query) is specified using path.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> </span><span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.postUrl(url);</span><br />
Future<HttpClientRequest> postUrl(Uri url)<br />
Opens a HTTP connection using the POST method. The URL to use is specified in url.<br />
<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.put(host, port, path);</span><br />
Future<HttpClientRequest> put(String host, int port, String path)<br />
Opens a HTTP connection using the PUT method. The server is specified using host and port, and the path (including possible fragment and query) is specified using path.<br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.putUrl(url); </span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Future<HttpClientRequest> putUrl(Uri url)</span></span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Opens a HTTP connection using the PUT method. </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">The URL to use is specified in url.</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"> client.toString();</span><br />
<span style="color: #666666; font-family: Trebuchet MS, Trebuchet, Verdana, sans-serif;"><span style="font-size: 13.1999998092651px; line-height: 14.7839994430542px;">String toString() </span></span><span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Inherited from Object </span><br />
<span style="color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;">Returns a string representation of this object.</span><br />
<br style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;" />
And somewhere is meant to put some red-pen markings for this...<br />
<span style="background-color: white; color: #666666; font-family: 'Trebuchet MS', Trebuchet, Verdana, sans-serif; font-size: 13.1999998092651px; line-height: 14.7839994430542px;"><br /></span>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-77136759638540618292015-02-14T11:20:00.000+02:002015-02-15T12:33:52.904+02:00List of methods and properties in Dart HttpClient class.Some notes of Dart HttpClient class for to help implementing, hacking it.<br />
<br />
<span style="background-color: white; font-size: 15px; line-height: 19px;"><span style="color: #484848; font-family: Roboto, sans-serif;"><a href="https://api.dartlang.org/apidocs/channels/stable/dartdoc-viewer/dart:io.HttpClient">https://api.dartlang.org/apidocs/channels/stable/dartdoc-viewer/dart:io.HttpClient</a></span></span><br />
Tutorial: <a href="https://www.dartlang.org/docs/tutorials/httpserver/">https://www.dartlang.org/docs/tutorials/httpserver/</a><br />
<b>Write HTTP Clients & Servers.</b><br />
This is meant to quicly be copied for to get needed parts of client, and delete others.<br />
<b><span style="color: #cc0000;">Warning</span></b>: in editor this brings errors, 'cos missing elements; <b>host, port, path, url, uri, realm</b> aso.<br />
I might do other posting of these, with full explanation of usage instructions.<br />
Material is pasted directly from <b>DartEditors hints-window</b>. <b>Usage:</b> Use this to build "show client properties" app, for <b>to demonstrate your client</b>. Somebody surely already did it :)<br />
<br />
<br />
void clientPlay() { // my wrapper function<br />
// add parameters: <b>host, port, path, url, suri, realm</b> aso.<br />
client.authenticate;<br />
client.authenticateProxy;<br />
<br />
client.autoUncompress;<br />
<br />
client.badCertificateCallback;<br />
client.badCertificateCallback( callback(X509Certificate, String, int) → bool)<br />
<br />
client.findProxy;<br />
client.findProxy( f(Uri) → String);<br />
<br />
client.hashCode;<br />
client.idleTimeout;<br />
<br />
client.maxConnectionsPerHost;<br />
<br />
client.runtimeType;<br />
client.userAgent;<br />
<br />
client.addCredentials(url, realm, credentials);<br />
<br />
client.addProxyCredentials(host, port, realm, credentials);<br />
client.close();<br />
<br />
client.delete(host, port, path);<br />
client.deleteUrl(url);<br />
<br />
client.get(host, port, path);<br />
client.getUrl(url);<br />
<br />
client.hashCode;<br />
<br />
client.head(host, port, path);<br />
client.headUrl(url);<br />
<br />
client.noSuchMethod(invocation);<br />
<br />
client.open(method, host, port, path)<br />
client.openUrl(method, url);<br />
<br />
client.patch(host, port, path);<br />
client.patchUrl(url);<br />
<br />
client.post(host, port, path)<br />
client.post(host, port, path);<br />
client.postUrl(url);<br />
<br />
client.put(host, port, path);<br />
client.putUrl(url);<br />
<br />
client.toString();<br />
<br />
}<br />
<br />HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-43265757892021677372014-12-30T14:54:00.000+02:002015-02-15T12:37:04.287+02:00Map of Dart learning subjects and their values, exercise for cloning Anagram example.When cloning / theming dart-html example: <b>anagram</b>, I wanted to make it like Dart-learning course, I made this map of casual Dart keywords, that popped to my mind, and setted some time / effort values to them. These values present 1-9 numbers of<b> time / effort / importance,</b> of ao. learning subject... just my opinion. <br />
<br />
Here is original anagram HTML dart example in gitHub<br />
<a href="https://github.com/dart-lang/www.dartlang.org/blob/master/src/site/docs/tutorials/add-elements/examples/anagram/anagram.dart" target="_blank">https://github.com/dart-lang/www.dartlang.org/blob/master/src/site/docs/tutorials/add-elements/examples/anagram/anagram.dart </a><br />
I'm now on phase 2 / 10 on this cloning, and next should put this map in use; instead of ..what..? and how..? Long way to go..<br />
<br />
here are all tutorial samples: <a href="https://github.com/dart-lang/dart-tutorials-samples">https://github.com/dart-lang/dart-tutorials-samples</a><br />
<br />
<br />
// <b>Dart learn subjects and their values</b><br />
Map dartLearnSubjects = {<br />
'await' : 6, 'analyzer' : 1, 'as' : 2, 'assert' : 4, 'abstract' : 3,<br />
'build' : 02, 'bool' : 0, 'button' : 5,<br />
<br />
'continue' : 2, 'client' : 5, 'comment' : 1, 'css' : 3, 'class' : 7,<br />
'case' : 2, 'const' : 3, 'closure' : 5, 'cascade' : 3, 'constructor' : 4,<br />
<br />
'default' : 3, 'do' : 2, 'datetime' : 3, 'dynamic' : 3, 'double' : 2,<br />
'debugger' : 2,<br />
'equality' : 2, 'extend' : 3, 'export' : 3, 'error' : 5, 'element' : 5,<br />
'external' : 9, 'enum' : 4,<br />
<br />
'factory' : 8, 'final' : 2, 'for' : 2, 'future' : 9, 'function' : 7,<br />
'generics' : 6, 'get' : 4,<br />
<br />
'hint' : 1, 'html' : 8,<br />
'implement' : 3, 'io' : 8, 'int' : 3, 'import' : 3, 'iterate' : 4,<br />
'intl' : 2, 'isolates' : 5, 'immutable' : 3, 'interface' : 3,<br />
<br />
'json' : 3, 'joke :)' : 0, 'joker :)' : 0, 'join?' : 0,<br />
'key' : 2,<br />
'lazy loading' : 2, 'label' : 3, 'library' : 5, 'list' : 2,<br />
<br />
'metadata' : 3, 'mixin' : 9, 'math' : 3, 'main' : 1, 'map' : 2,<br />
'methods' : 2,<br />
'new' : 2, 'null' : 1, 'num' : 2,<br />
'objcet' : 3, 'output' : 1, 'or?' : 1, 'operators' : 05, 'on--?' : 3,<br />
<br />
'parameter' : 4, 'parse' : 5, 'pub' : 7, 'print' : 1, 'part' : 2,<br />
'problems' : 1,<br />
'query' : 4, 'queue' : 2,<br />
<br />
'rune' : 2, 'run?' : 2, 'random' : 2, 'return' : 2,<br />
'server' : 8, 'static' : 5, 'sdk' : 5, 'string' : 1, 'set' : 2,<br />
'system?':4, 'switch' : 1, 'super' : 4, 'symbol' : 2, 'scope' : 2,<br />
<br />
'this' : 3, 'throw' : 3, 'task' : 1, 'type' : 7, 'try' : 2,<br />
'typedefs' : 6, 'typecast' : 6, 'todo' : 2,<br />
<br />
'unordered' : 0,<br />
'void' : 1, 'value' : 1, 'var' : 3,<br />
'web sql' : 7, 'web audio' : 7, 'while' : 1, 'worker' : 4, 'with' : 3,<br />
<br />
'x1' : 0, 'y1' : 0, 'yield?' : 0, 'z1' : 0<br />
<br />
};<br />
<div>
<br /></div>
<div>
//TODO <b>howTo : Print a map</b> :)</div>
<div>
dartLearnSubjects.forEach((k, v) { print('$k, $v'); });<br />
--------------------------------------------------------------------------------------------------<br />
You can run above code putting it directly inside main function.<br />
void main() {<br />
print('.. hello here we go!! ');<br />
// code here<br />
}</div>
<div>
.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-18775760891825915442014-02-15T15:53:00.000+02:002015-02-15T12:35:34.290+02:00Quick tips for Dart newcomers (to be continued...)- Abreviations- Know Internet Slang- ALL Wikipedia stuff about web, server, programming... - Basic idea and control flow of programming.<br />
<br />
At the beginning of 2014 DartLang is still a work in progress. It do not yet have all the goodies that older lanquages have, but it is gonna go far. Dart may not be the best-laquage-possible to-bebuilt-now, BUT it is best, that can survive now, and to get great bunch of developers behind it.<br />
<br />
Writing this in Nexus... numbering... must fix it in laptop. (lost in transition lol)<br />
<br />
Put jre in jre folder in your dart-program folder, if you don't use path variable. if problems, read:<br />
Read ALL here: dartlang.org AND read it again. Consider keeping notes in Evernote, Google Keep, Springpad, GTask or...<br />
<br />
Choose short names for your main data folders, you use them daily, you learn them. EXAMPLE here. (coming)<br />
<br />
Trust editor tools; ctrl-tab for advices on subject. You do not have to memorize all<br />
<br />
Trust Google search. try: dart foreach print ...xx<br />
DartEditor keyboard shortcuts: choose, wich ones you need from HERE (coming)<br />
" Play with Darteditors windows, until you got Happy state.<br />
LEFT: Files, under: Object inspector. Middle: edit, Under: Problems, output, progress, breakpoints aso... Right: Debugger, Outline"<br />
<br />
(...) Use Google spreadsheets to scetch, analyze and plan your programs and their classes, functions and variables, and their naming conventions.<br />
<br />
Take time and plan NAMES for you variables and classes: MEANING. <br />
<br />
Love your lanquage. Dont be angry to other languages. Trust it. Trust the community. It will develope; every week something new. <br />
<br />
Make a cheatSheet for usual stuff. HERE sample.(coming) Until Darteditor gets templates.<br />
<br />
Dont start to build a bridge until you see, where is other end. Build first a small bridge.<br />
<br />
Give Dart editor time to analyze sometimes. Prevent analyzing in other folders, when you want to work.<br />
<br />
Start writing, when you have clear picture in your mind about the reality (or tale) which you want to program,<br />
<br />
Plan variables, which you need when you BUILD and plan your prog. <br />
<br />
Make BASE library, which is for all your programs. Make (local)BASE library, which is for you current work.<br />
<br />
Make MyPackage_Use -program which all the time uses and tests your package. <br />
<br />
Dont use cryptic names, which you do not remember later.<br />
<br />
Logic. <br />
<br />
Be ready to change names, if they do not feel good. Refactoring!!<br />
Close editor, when you make BIG changes in folder structures. Destroying Metadata, darteditor -folder, is not a bad idea. <br />
<br />
Trust dart documentation.... Be with community. use Github and StackOverFlow.<br />
<br />
Ready? So sit, take a little cup... start writing and let the ideas come to reality....<br />
<br />
(to be continued.. and modified..)<br />
<br />
Originally pubished in etdart.blogspot.fiHeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-24737549956044162592014-02-09T15:12:00.000+02:002015-02-15T12:38:10.134+02:00Collection of small Pub packages, for learning purposes, best suited to study Dartlang.<br />
<br />
Collecting links to Pub packages, in ordxer to find those, which are best suited for learning purposes, and to present different Dart properties. <br />
- Trying to avoid using BIG environmets, like Polymer, Angular, Hop, Bot aso.<br />
<br />
game_loop <a href="http://pub.dartlang.org/packages/game_loop">http://pub.dartlang.org/packages/game_loop</a> This main loop is responsible for processing inputs from keyboards, mice, gamepads, and time. Also, the main loop manages browser state, e.g., pointer lock and fullscreen. <br />
<br />
mailer <a href="https://pub.dartlang.org/packages/mailer">https://pub.dartlang.org/packages/mailer</a> Compose and send emails from Dart. Supports file attachments, HTML emails and multiple transport methods.<br />
<br />
solitaire <a href="http://pub.dartlang.org/packages/solitaire">http://pub.dartlang.org/packages/solitaire</a> Solitaire card game.<br />
<br />
<br />
Next I have not tested: <br />
<br />
chess <a href="http://pub.dartlang.org/packages/chess">http://pub.dartlang.org/packages/chess</a> A port of chess.js to Dart. chess.dart is a library for legal chess move generation, maintenance of chess game state, and conversion to and from the formats FEN and PGN. <br />
<br />
bulls_eye <a href="http://pub.dartlang.org/packages/bulls_eye">http://pub.dartlang.org/packages/bulls_eye</a> Bulls-Eye is an Dart-IO Extension to build up an WebServer (like node.js and Express)<br />
<br />
image <a href="http://pub.dartlang.org/packages/image">http://pub.dartlang.org/packages/image</a> Provides server and web apps the ability to load, manipulate, and save images with various image file formats including PNG, JPEG, GIF and WebP.<br />
<br />
more <a href="http://pub.dartlang.org/packages/more">http://pub.dartlang.org/packages/more</a> Various extension libraries that make Dart a better place. More Dart — Literally <br />
<br />
mongo_dart <a href="http://pub.dartlang.org/packages/mongo_dart">http://pub.dartlang.org/packages/mongo_dart</a> MongoDB driver for Dart <br />
<br />
eventable <a href="http://pub.dartlang.org/packages/eventable">http://pub.dartlang.org/packages/eventable</a> simple event system for implementing model->event->view design pattern. <br />
<br />
streamable <a href="http://pub.dartlang.org/packages/streamable">http://pub.dartlang.org/packages/streamable</a> a library of helpful custom stream candies<br />
<br />
geo <a href="http://pub.dartlang.org/packages/geo">http://pub.dartlang.org/packages/geo</a> A set of geographic's functions<br />
<br />
dartminer <a href="http://pub.dartlang.org/packages/dartminer">http://pub.dartlang.org/packages/dartminer</a> A Bitcoin miner with Dart language.<br />
<br />
stillshot <a href="http://pub.dartlang.org/packages/stillshot">http://pub.dartlang.org/packages/stillshot</a> A simple, bare-bones static site generator with markdown and mustache templating support.<br />
<br />
color <a href="http://pub.dartlang.org/packages/color">http://pub.dartlang.org/packages/color</a> A simple Dart package exposing a Color class which can be used to create, convert, and compare colors.<br />
<br />
chrome <a href="http://pub.dartlang.org/packages/chrome">http://pub.dartlang.org/packages/chrome</a> An library for accessing the Chrome APIs in a packaged app or extension. <br />
<br />
ace <a href="http://pub.dartlang.org/packages/ace">http://pub.dartlang.org/packages/ace</a> High performance code editor for the web.<br />
<br />
dartcoin <a href="http://pub.dartlang.org/packages/dartcoin">http://pub.dartlang.org/packages/dartcoin</a> A Bitcoin library for Dart. Pud-test release.<br />
<br />
lawndart <a href="http://pub.dartlang.org/packages/lawndart">http://pub.dartlang.org/packages/lawndart</a> An easier way to access storage APIs in the browser.<br />
<br />
intl <a href="http://pub.dartlang.org/packages/intl">http://pub.dartlang.org/packages/intl</a> internationalization and localization facilities, including message translation, plurals and genders, date/number formatting and parsing, and bidirectional text.<br />
<br />
<br />
<br />
watch <a href="http://pub.dartlang.org/packages/watch">http://pub.dartlang.org/packages/watch</a> Simple file watcher<br />
<br />
<br />
<br />
Just 20 links now... most of them I have not tested. <br />
<br />
To be continued.... most likely.. published originally in etdart.blogspot.fi <br />
.HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-36136249320066271822014-02-03T15:17:00.000+02:002015-02-15T12:38:58.670+02:00My note: Dart. Functions. A bunch of instructions, which executes sequentially.<br />
Class. You can pick class methods one at a time, and execute it. <br />
<br />
Function. wikipedia; Function: (subroutine) <br />
<br />
In computer programming, a subroutine is a sequence of program instructions that perform a specific task, packaged as a unit. <br />
<br />
...................<br />
<br />
<br />
Commands are fullfilled in sequential order. Nothing can stop functions execution. "When a function that returns a Future is invoked, two things happen:<br />
<br />
The function queues up work to be done and returns an uncompleted Future object immediately.<br />
Later, when the value is available, the Future object completes with that value or with an error."<br />
<br />
spec 1.1 Functions abstract over executable actions. Because Dart is optionally typed, we cannot guarantee that a function that does not return a value will not be used in the context of an expression. Therefore, every function must return a value. A return without an expression returns null.<br />
A function declaration is a function that is neither a member of a class nor a function literal. Function declarations include library functions, which are function declarations at the top level of a library, and local functions, which are functions declarations declared inside other functions. Library functions are often referred to simply as top-level functions.<br />
<br />
<br />
If a function does not declare a return type explicitly, its return type is dynamic.<br />
<br />
<br />
From: https://www.dartlang.org/articles/event-loop/ <br />
Once a Dart function starts executing, it continues executing until it exits. In other words, Dart functions can’t be interrupted by other Dart code. <br />
<br />
<br />
<br />
<br />
https://www.dartlang.org/docs/dart-up-and-running/contents/ch02.html <br />
A closure is a function object that has access to variables in its lexical scope, even when the function is used outside of its original scope. Functions can close over variables defined in surrounding scopes.<br />
<br />
Typedefs<br />
In Dart,functions are objects, just like strings and numbers are objects. A typedef, or function-type alias, gives a function type a name that you can use when declaring fields and return types. A typedef retains type information when a function type is assigned to a variable.<br />
<br />
<br />
My note: Nowhere (or where?) in Dart doc is clearly said "Function is a collection of elements/code, which are all evaluated in sequence" <br />
".. bunch of logic".<br />
<div>
<br /></div>
<div>
Published originally in etdart.blogspot.fi </div>
HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-36449394221452359912014-02-02T15:21:00.000+02:002015-02-15T12:41:39.468+02:00Understanding Dart Futures and Isolates; their different way to work in time factor<br />
Different cheme to use time factor to enhance programs effeciency.<br />
<br />
Some clips gathered from dartlang.org pages:<br />
Understanding Isolates: <br />
<br />
Isolate api: <a href="https://api.dartlang.org/docs/channels/stable/latest/dart_isolate.html">https://api.dartlang.org/docs/channels/stable/latest/dart_isolate.html</a><br />
<br />
<a href="https://www.dartlang.org/articles/event-loop/#use-isolates-or-workers-if-necessary">https://www.dartlang.org/articles/event-loop/#use-isolates-or-workers-if-necessary</a><br />
Note: A Dart command-line app can run code in parallel by creating isolates. (Dart web apps can’t currently create additional isolates, but they can create workers.) Isolates don’t share memory; they’re like separate apps that communicate with each other by passing messages. With the exception of code that an app explicitly runs in additional isolates or workers, all of an app’s code runs in the app’s main isolate. For more information, see Use isolates or workers if necessary, later in this article.<br />
<br />
How many isolates should you use? For compute-intensive tasks, you should generally use as many isolates as you expect to have CPUs available. Any additional isolates are just wasted if they’re purely computational. However, if the isolates perform asynchronous calls—to perform I/O, for example—then they won’t spend much time on the CPUs, so having more isolates than CPUs makes sense.<br />
<br />
<br />
<a href="http://programming.oreilly.com/2013/05/8-dart-features-those-fat-cats-dont-want-you-to-know.html">http://programming.oreilly.com/2013/05/8-dart-features-those-fat-cats-dont-want-you-to-know.html </a><br />
<br />
Dart replaces shared-memory threads with isolates<br />
Concurrency is great, but shared-memory threads are error prone. Dart implements an isolate system for safer concurrent programming. Isolates are “isolated memory heaps” that can be spawned from a top-level function or URI. Isolates communicate by passing messages, which are copied before they are sent.<br />
Understanding Futures:<br />
Future is here: https://api.dartlang.org/docs/channels/stable/latest/dart_async.html<br />
https://www.dartlang.org/docs/dart-up-and-running/contents/ch03.html#ch03-futures<br />
<br />
https://www.dartlang.org/articles/event-loop/#use-isolates-or-workers-if-necessary :<br />
<br />
<br />
<br />
Fun facts about Future:<br />
The function that you pass into Future’s then() method executes immediately when the Future completes. (The function isn’t enqueued, it’s just called.)<br />
If a Future is already complete before then() is invoked on it, then a task is added to the microtask queue, and that task executes the function passed into then().<br />
The Future() and Future.delayed() constructors don’t complete immediately; they add an item to the event queue.<br />
The Future.value() constructor completes in a microtask, similar to #2.<br />
The Future.sync() constructor executes its function argument immediately and (unless that function returns a Future) completes in a microtask, similar to #2.<br />
<br />
<br />
The event queue has entries from both Dart (futures, timers, isolate messages, and so on) and the system (user actions, I/O, and so on).<br />
My conclusion: <br />
Summary: Futures are: Asked my frend to do it, he returns with result .<br />
I started the process, I get a response in due course.<br />
Are part of (BIG) async.api <br />
Isolates are: Outside workers to enhance our work. And to bring safety.<br />
Are in (small) dart:isolate library api<br />
Command line... parallel<br />
Concurrent programming, independent workers similar to threads<br />
<br />
Futures and Isolates work with time factor differently, to enhance programs effectiveness.<br />
<br />
Questions arise: to be continued....HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-31383122403376679402013-12-27T15:23:00.000+02:002015-02-15T12:40:49.762+02:00DartEditor Keyboard Shortcuts 12-2013, from Pop-Up window in Editor<table cellpadding="0" cellspacing="0" dir="ltr" style="color: #666666; font-family: arial, sans, sans-serif; font-size: 13px; line-height: 18.200000762939453px; table-layout: fixed;"><colgroup><col width="292"></col><col width="200"></col><col width="120"></col><col width="120"></col></colgroup><tbody>
<tr style="height: 17px;"><td colspan="3" rowspan="1" style="border: 1px solid rgb(204, 204, 204); direction: ltr; overflow: hidden; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: large;">Dart Editor KeyBoard Shortcuts 12/2013</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(204, 204, 204); border-top-style: solid; border-top-width: 1px; overflow: hidden; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Find And Replace</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl+ Shift + F</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">a</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Inline</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Alt + Shift + I</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">a</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Refresh</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">F5</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">a</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Open Class Hierarcy</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">F4</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">a USE</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Show Key Assist</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Shift + L</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">a USE</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Content Assist</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Space</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Help</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Extract Local Variable</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Alt + Shift + L</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Extract Method</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Alt + Shift +M</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Quick Fix</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + 1</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Redo</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl Shift Z</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Rename Refactoring</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Alt Shift R</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Run Script</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Shift + F1</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Save All</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Shift + S</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Search Box</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + 3</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Show in Finder</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl Alt Shift F</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Toggle Breakpoint</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Shift + B</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Open Glance</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + F</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Learn __</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Close</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + W</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Menu</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Manage Launches</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Shift + M</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Menu</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Reanalyze Sources</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl Alt Shift B --</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Menu</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td colspan="2" rowspan="1" style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Who need these __</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoNee</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Activate Editor</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">F12</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoNeed</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Backward History</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Alt+ Left</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoNeed</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Maximize Active Viev of Ed</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + M</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoNeed</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Close all</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Shift + W</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoUse</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Format Element</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Shift + R</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoUse</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Forward History</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Alt+ Right</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoUse</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Generate JavaScript</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Shift + G</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoUse</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Next Editor</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + F6</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoUse</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Previous Editor</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Shift + F6</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoUse</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Quick Switch Editor</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + E</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">NoUse</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Properties</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Alt + Enter</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obious )</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td colspan="2" rowspan="1" style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">No need to learn< easy to remember</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obviou</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Copy</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + C</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Cut</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + X</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Delete</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Delete</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 2px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">New File</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + N</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Open Existing folder</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + O</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Paste</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + V</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Run</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + R</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Save</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + S</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Select All</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + A</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
<tr style="height: 17px;"><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Undo</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Ctrl + Z</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; direction: ltr; padding: 0px 3px; vertical-align: bottom;"><span style="background-color: white; font-size: small;">Obvious</span></td><td style="border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-bottom-width: 1px; border-right-color: rgb(204, 204, 204); border-right-style: solid; border-right-width: 1px; padding: 0px 3px; vertical-align: bottom;"></td></tr>
</tbody></table>
<span style="background-color: white;"><br style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;" /></span>
<br />
<div style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;">
<span style="background-color: white;">In this table is information from DartEditors keyboard-shortcyts, as they are in the end of year 2013. Checked two times... but errors may still be...</span></div>
<div style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;">
<span style="background-color: white;">I <b>use them,</b> want to<b> learn</b>, <b>No-Use</b>, or use <b>menu instead</b>. Many are <b>obvious</b>...</span></div>
<div style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;">
<span style="background-color: white;">For the case you do not want to memorize them all....</span></div>
<div style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;">
<span style="background-color: white;">Check, if they are changed. And be thankful co's this was not easy to do.. lol..</span></div>
<div style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;">
<span style="background-color: white;">Maybe in SDK-folder there is easy copy of this information...</span></div>
<div style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;">
<span style="background-color: white;"><br /></span></div>
<div style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;">
<a href="https://docs.google.com/spreadsheet/ccc?key=0AsVeuVnSGEmadEs5a0szS1J1N1FSWktZU3hpNUt2V0E&usp=sharing" style="background-color: white; color: #4d469c; text-decoration: none;" target="_blank"><b><span style="font-size: medium;">DartLang Editor Keyboard_Shortcuts-BreadSheet.</span></b> </a></div>
<div style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;">
<span style="background-color: white;"><br /></span></div>
<div style="color: #666666; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18.200000762939453px;">
<span style="background-color: white;">Here it is in Google-Docs for everybody to see and comment.</span></div>
HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-11150929909567958112013-03-15T15:30:00.000+02:002015-02-15T12:40:03.895+02:00About Dart functions and Closures, Dart funktiot ja sulkemisetUnderstanding Closures.. hard.. and Functions. (spec: Functions abstract over executable actions)<br />
<br />
This conversation is from: <br />
<a href="https://groups.google.com/a/dartlang.org/forum/?fromgroups=#!topic/misc/NOuoGrxW2nE">https://groups.google.com/a/dartlang.org/forum/?fromgroups=#!topic/misc/NOuoGrxW2nE</a><br />
<br />
<a href="https://groups.google.com/a/dartlang.org/d/msg/misc/NOuoGrxW2nE/DHTVT-_qq40J">https://groups.google.com/a/dartlang.org/d/msg/misc/NOuoGrxW2nE/DHTVT-_qq40J</a><br />
Direct link to just this piece of conversation.. Great!!<br />
<br />
Alex Tatumizer Mar 14 (16 hours ago)<br />
<br />
@Ladislav:<br />
<br />
Somehow, I overlooked the fact that whatever is called Function in dart in fact doesn't correspond to javascript notion of Function - it's really a closure, e.g.<br />
Function f="abcd".substring;<br />
print(f(0,2));<br />
<br />
<br />
This is a great feature, so I withdraw my sarcasm. I thought dart makes distinction between Function (as pointer to function "codes") and Closure, but it probably doesn't.<br />
Won't it be better to call it Closure, not Function then, to avoid confusion?<br />
<br />
Ladislav Thon asvered: <br />
<br />
Function is just something that can be called. Even this, I believe:<br />
<br />
class Answer {<br />
call() => 42;<br />
}<br />
<br />
<br />
main() {<br />
var a = new Answer();<br />
print(a());<br />
print(a is Function);<br />
}<br />
<br />
<br />
Some Functions are in fact closures, meaning that they carry their lexical environment, but not all of them. I'm not sure about renaming Function to Closure, I think it would make some situations more clear and some less.<br />
<br />
<br />
Tatumizer ansvered:<br />
<br />
<br />
Probably you are right, but then things get a bit confusing indeed for anyone coming from javascript (huge army of potential dart users).<br />
Look at "Tour of the dart language" - they are talking about functions AND closures, without elaborating on subtleties - but this are very important subtleties, deserved to be featured much more prominently.<br />
Needs to be better documented maybe? <br />
<br />
<br />
Check link for more conversation...<br />
<br />
And next theme: Orthogonal Wikipedia: <br />
<br />
Computer scienceOrthogonality in programming language design is the ability to use various language features in arbitrary combinations with consistent results.[9] This usage was introduced by von Wijngaarten in the design of Algol 68:<br />
<br />
<br />
The number of independent primitive concepts has been minimized in order that the language be easy to describe, to learn, and to implement. On the other hand, these concepts have been applied “orthogonally” in order to maximize the expressive power of the language while trying to avoid deleterious superfluities.[10]<br />
<br />
Orthogonality is a system design property which guarantees that modifying the technical effect produced by a component of a system neither creates nor propagates side effects to other components of the system. Typically this is achieved through the separation of concerns and encapsulation, and it is essential for feasible and compact designs of complex systems. The emergent behavior of a system consisting of components should be controlled strictly by formal definitions of its logic and not by side effects resulting from poor integration, i.e. nonorthogonal design of modules and interfaces. Orthogonality reduces testing and development time because it is easier to verify designs that neither cause side effects nor depend on them.<br />
<br />
An instruction set is said to be orthogonal if it lacks redundancy (i.e. there is only a single instruction that can be used to accomplish a given task)[11] and is designed such that instructions can use any register in any addressing mode. This terminology results from considering an instruction as a vector whose components are the instruction fields. One field identifies the registers to be operated upon, and another specifies the addressing mode. An orthogonal instruction setuniquely encodes all combinations of registers and addressing modes.[citatio <br />
<br />
<br />
Published originally in etdart.blogspot.fi HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-49013512140513128692012-04-20T15:42:00.000+03:002015-02-15T13:01:51.001+02:00Generics in Dart: <> merkkien käyttöä, T, E , DART:issaThis article is fully to be modified<br />
<br />
Lisäksi DART kielessä on näitä <T> <E> ilmaisuja. Muiden sulkumerkkien jälkeen ne pysähdyttävät hieman miettimään... Miksi juuri T ja E ?<br />
(K,V) Tarkoittaa siis Key ja Value, sehän on selvää.<br />
Kokoan leikkeitä ohjeista:<br />
<br />
http://www.dartlang.org/language-tour/#generics<br />
<br />
Generics<br />
<br />
If you look at the API documentation for the basic array type, List, you'll see that the type is actuallyList<E>. The <...> notation marks List as a generic (or parameterized) type—a type that can declare formal type parameters.<br />
For example, if you intend for a list to contain only strings, you can declare it as List<String> (read that as "List of String").<br />
....<br />
Generic types can save you the trouble of creating all these interfaces. Instead, you can create a single interface that takes a type parameter:<br />
interface Cache<T> {<br />
T getByKey(String key);<br />
setByKey(String key, T value);<br />
}<br />
In this code, T is the stand-in type. It's a placeholder that you can think of as a type that a developer will define later.<br />
Using collection literals<br />
<br />
Both built-in collection types are parameterized: lists and maps. Parameterized literals are just like the literals you've already seen, except that you add <type> before the opening bracket. For example:<br />
List<String> names = <String>['Seth', 'Kathy', 'Lars'];<br />
Map<String, String> pages = <String>{ // specify value type: String<br />
'index.html':'Homepage', // (the key type is implicitly String)<br />
'robots.txt':'Hints for web robots',<br />
'humans.txt':'We are people, not machines' };<br />
<br />
<br />
NO? Näyttää siltä siis, että <> merkinnän sisällä on "tyyppi"...<br />
..<br />
To specify one or more types when using a constructor, put the types in angle brackets (<...><br />
..<br />
Generic collections and the types they contain<br />
<br />
Dart generic types are reified, which is a fancy way of saying that they carry their type information around at runtime.<br />
= = = = = = = = = = = = = = = = = = = = = = = = =<br />
<br />
http://api.dartlang.org/dart_core.html<br />
Collection<E> <br />
HashSet<E><br />
Iterable<E><br />
Iterator<E><br />
List<E><br />
Queue<E><br />
Set<E> <br />
<br />
<br />
HashMap<K, V><br />
LinkedHashMap<K, V><br />
Map<K, V> mapping a key to a value.<br />
<br />
<br />
Completer<T><br />
Future<T><br />
<br />
<br />
SIIS: E T K V<br />
What is this T in <T> ?<br />
Interface Future<T><br />
<br />
A Future is used to obtain a value sometime in the future. Receivers of a Future obtain the value by passing a callback to then.<br />
<br />
========================================================<br />
<br />
What is this E in <E> ? <br />
<br />
===========================================<br />
<br />
http://www.dartlang.org/language-tour/#Typedefs<br />
Typedefs can be parameterized.<br />
typedef int Compare<T>(T a, T b);<br />
<br />
class SortedCollection<T> {<br />
Compare<T> compare;<br />
SortedCollection(this.compare);<br />
}<br />
<br />
main() {<br />
SortedCollection<int> s = new SortedCollection<int>((a,b) => a - b);<br />
print(s.compare is Compare<int>); // true<br />
print(s.compare('a','b')); // checked mode throws exception<br />
}<br />
dartlang 0.08<br />
<br />
typeParameter:<br />
identifier (extends type)?<br />
;<br />
typeParameters:<br />
`<' typeParameter (`,' typeParameter)* `>'<br />
;<br />
A type parameter T may be suffixed with an extends clause that specifies<br />
the upper bound for T.<br />
<br />
A type parameter T may be suffixed with an extends clause that specifies<br />
the upper bound for T. ....<br />
<br />
Tässäpä hieman sulattelemista... Täydennän tekstiä vielä... <br />
<br />
<br />
http://c.dart-examples.com/learn/variables/collections<br />
Tämä kirjoitus tuo hieman lisävalaistusta asiaan...<br />
<br />
.published originally in etdart.blogspot.fi HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0tag:blogger.com,1999:blog-3997815136771118776.post-29137134269548467872012-03-27T15:46:00.000+03:002015-02-15T13:03:39.529+02:00Overloading, what do'esw it mean? mitä se tarkoittaa, DART ym. kieletLike most dynamically-typed languages, Dart doesn't support overloading....<br />
<br />
http://japhr.blogspot.com/2012/02/overloading-dart-operators-for-great.html<br />
Overloading Dart Operators for Great Evil<br />
<br />
http://en.wikipedia.org/wiki/Overloading<br />
<br />
Constructor and function/method overloading, in computer science, a type of polymorphism where different functions with the same name are invoked based on the data types of the parameters passed<br />
Operator overloading, a form of functional or method overloading where the action being overloaded is an operator, such as + or -<br />
<br />
http://www.parashift.com/c++-faq-lite/operator-overloading.html<br />
<br />
It allows you to provide an intuitive interface to users of your class, plus makes it possible for templates to work equally well with classes and built-in/intrinsic types.<br />
Operator overloading allows C/C++ operators to have user-defined meanings on user-defined types (classes). Overloaded operators are syntactic sugar for function calls...<br />
<br />
<br />
<br />
Ja tähän Dart-kielestä esimerkkejä...<br />
<br />
<br />
<br />
Function Overloading - General Dart Discussion | Google Groups<br />
Oct 30, 2011 ... I'm progamming complex object and I am a little dissapointed with some aspect like it haven't got Methods Overloading. I think here could be ...<br />
LabeledDiscussions<br />
Constructor overloading - General Dart Discussion | Google Groups<br />
Feb 12, 2012 ... Subject: Constructor overloading ... Why Dart doesn't allow to overloadconstructors. I have to define ... Subject: Re: Constructor overloading ...<br />
LabeledDiscussions<br />
Operator Overloading: "Convert" Operator - General Dart Discussion ...<br />
Feb 13, 2012 ... I have seen this in other languages as an overloading of the "Convert" operator. Is this possible in Dart? For example: class Material{ ... } ...<br />
LabeledDiscussions<br />
<br />
http://www.dartlang.org/articles/idiomatic-dart/<br />
<br />
Named constructors<br />
<br />
Like most dynamically-typed languages, Dart doesn't support overloading. With methods, this isn't much of a limitation because you can always use a different name, but constructors aren't so lucky. To alleviate that, Dart lets you define named constructors:<br />
class Point {<br />
num x, y;<br />
Point(this.x, this.y);<br />
Point.zero() : x = 0, y = 0;<br />
Point.polar(num theta, num radius) {<br />
x = Math.cos(theta) * radius;<br />
y = Math.sin(theta) * radius;<br />
}<br />
}<br />
Here our Point class has three constructors, a normal one and two named ones. You can use them like so:<br />
var a = new Point(1, 2);<br />
var b = new Point.zero();<br />
var c = new Point.polar(Math.PI, 4.0);<br />
Note that we're still using new here when we invoke the named constructor. It isn't just a static method.<br />
. originally published in etdart.blogspot.fi <br />
<br />HeikLaphttp://www.blogger.com/profile/11690471324902186332noreply@blogger.com0