{{Infobox prepared food | name = Boston cream pie | image = | caption = A Boston cream pie | alternate_name = | country = United States | region = Boston, Massachusetts | creator = | course = Dessert | served = Room temperature or chilled | main_ingredient = Sponge cake, custard or cream, chocolate glaze | variations = | calories = | other = }} A Boston cream pie is a cake that is filled with a custard or cream filling and frosted with chocolate.{{sfn|Merriam-Webster}} Although it is called a Boston cream pie, it is in fact a cake, and not a pie.{{sfn|Goldstein|Krondl|Heinzelmann|Mason|2015|}}
Contents |
Owners of the Parker House Hotel in Boston state that the Boston cream pie was first created at the hotel by Armenian-French chef M. Sanzian in 1856.{{sfn|Stradley}} The cake he created, called "Parker House Chocolate Cream Pie", consisted of two layers of French butter sponge cake filled with crème pâtissière and brushed with a rum syrup, its side coated with crème pâtissière overlain with toasted sliced almonds, and the top coated with chocolate fondant.{{sfn|Patent|2002}}
The commonly known variety is likely derived from the Washington pie, a two-layer yellow cake filled with jam and topped with confectioner's sugar, for which pastry cream of custard eventually replaced the jam, and a chocolate glaze replaced the confectioner's sugar.{{sfn|Goldstein|Krondl|Heinzelmann|Mason|2015}} Today, the cake is topped with a chocolate glaze (such as ganache) and sometimes powdered sugar or a cherry.
The first known attested printed use of the term "Boston cream pie" occurred in the Granite Iron Ware Cook Book, printed in 1878.{{sfn|Goldstein|Krondl|Heinzelmann|Mason|2015}} The earliest known recipe of the modern variant was printed in Miss Parloa's Kitchen Companion in 1887 as "Chocolate Cream Pie".{{sfn|Goldstein|Krondl|Heinzelmann|Mason|2015}}
The Boston cream pie is the official dessert of Massachusetts, declared as such on 12 December 1996.{{sfn|Citizen Information Service|p=6}}
A Boston cream doughnut is a name for a Berliner filled with vanilla custard or crème pâtissière and topped with icing made from chocolate.<ref>http://www.pillsbury.com/Products/Breakfast/Toaster-Strudel</ref>
{{Portal|Boston|Food}}
{{reflist}}
{{refbegin}}
{{refend}}
{{Cakes}} {{Chocolate desserts}}
{{DEFAULTSORT:Boston Cream Pie}}
{{dessert-stub}}


Below are links to live examples used in the Udacity Responsive Images course.
You can access all the code for this course at github.com/udacity/responsive-images.
Patches and issues welcome!


Hilary and Jackie (1998)
A Film Review by Mark O'Hara Visit Online Film Critics Society at http://www.ofcs.org
'Hilary and Jackie' is a film very full of ideas, a film whose every shot is fascinating to watch. There are enough ideas to fill a discussion twice as long as the 121- minute running time. And best of all, it's a film that takes risks and turns out mostly successful.
One of the many genres 'Hilary and Jackie' fits is biography; specifically, it's the biography of the noted English cellist Jacqueline du Pre (Emily Watson), a story that also traces the life of Jackie's sister Hilary (Rachel Griffiths). It begins with the sisters on a girlhood lark at the beach, chasing each other across dunes in a make-believe world that surfaces later in the film. We learn soon that it is Hilary du Pre who is the child prodigy, a flautist who performs in Leopold Mozart's 'Toy Symphony' over the BBC. Rather pushy Mother (Celia Imrie) browbeats the younger Jackie into practicing more: "If you want to stay together, you have to be as good as each other." In a smooth telescoping of time, we observe 'Jacks' working on her fingering during breakfast, during lessons at school - until at a competition she wins best strings soloist to match Hilary's best woodwinds soloist, an achievement that ignites a first spark of jealousy in Hilary. Keely Flanders and Auriol Evans do stupendous work as the young Hilary and Jackie. Both are very expressive and natural before the camera. Only one area of Evans' performance called my attention, and that was her vibrato. Apparently most of the cast were occupied constantly with music lessons, but when Evans and, later, Watson, work with the cello, there are hints of phoniness. It's an easy element to overlook, however, as you have to love a film gutsy enough to show actors' hands while they play!
Before long, we see Griffiths and Watson in the title roles. Ironically, Jackie is far ahead of her sister in musical prowess, and as Hilary stays at home to begin a romance with Kiffer Finzi (David Morrissey), Jackie embarks on a tour of Europe. The conflict created by this situation is one of the more conventional aspects of the film. The more 'domestic' one loves her husband and adorable children, while the more artistic - and unstable - one marries another artist and continues to hop from city to city. It's not a weakness, though, as the story takes an almost mythical spin when Jackie, exhausted by years of her whirlwind lifestyle, visits her sister and her family in the English countryside. When Jackie makes an unthinkable request of her sister and brother-in-law, we glimpse the first signs of an illness that invades Jackie's personal life and threatens her very ability to play the cello.
At one point the film ceases being a typical biopic and takes a chance with an unusual narrative device, the word 'Hilary' appearing on a black screen. In the following segment we witness events from Hilary's point of view, tracing her failure at a flute exam, her relationship with Kiffer, and her oddly close attachment to her sister. Later 'Jackie' appears on the screen. To locate us, the director, Anand Tucker, briefly repeats a few scenes, but now focuses on Jackie's worldview, a narrow one damaged by a lonesome concert schedule in world capitals. (What surprised me is that no one traveled with one so young; Jackie in the film languishes at her own receptions, places her cello outside in the rain, she is so wearied of playing it.) But the two-edged storytelling compliments the twin imagery used in other places. It's really what causes the narrative to resonate, to build a momentum that not only sustains our interest but engages our sympathy. Jackie's depression is lessened somewhat by her marriage to Argentinian-born pianist and conductor Daniel Barenboim (James Frain). But her condition seems bearable only when she is with Hilary.
There are moments that seem derivative of 'Shine,' especially when the motion slows and Jackie fails to negotiate her bowings, the sound going screechy and dissonant. But the comparisons stop here. Jacqueline du Pre's malady is certainly very different from David Helfgott's. What's gripping is people's reactions to each performer. I would give 'Hilary and Jackie' the edge in overall quality, though it seems that it will not attain the level of hype that surrounded 'Shine' two years ago.
David Johnson's photography adds much to the dramatic tension. We see everything from a classy circling of the young Jackie, frantically dancing with her body in an early show of her flamboyant style, to the thick, watery world perceived by Jackie in the later stages of her disease. Interiors are also portrayed particularly well, many shots showing the wide foyers of music academies.
Emily Watson is a delight to watch. Like Jacqueline du Pre herself, Watson seems to have a maturity beyond her years - she's a precocious actress. Because of the facility with which she depicts complex emotional and psychological extremes, her performance deserves recognition; it should pull down many nominations. As her sister, Rachel Griffiths also creates a sympathetic role, her face at once natural and intense. When we witness her cradling Jackie, we are moved equally by deep love and the story's inertia - moving inexorably to a realistic conclusion.
Frank Cottrell Boyce has written a screenplay that is smart and fast-moving. He and Tucker apparently informed the du Pres (Hilary and brother Piers penned a book about their sister) that they wished to dramatize Jackie's story in an uncharacteristically expressive manner. They have succeeded. Of course we have to remember the license used by the storytellers here, especially when the plot comes full circle and takes a decidedly expressionistic direction. Bravo for the takers of risks!
I recommend 'Hilary and Jackie' to any music lover, but also to lovers of untraditional plotting, and moviegoers who derive pleasure from heady conversation over ice cream when the movie's done. It's a bold step by filmmaker Anand Tucker, and a tribute to Jackie du Pre, a good soul who loved music.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Since ordinary ordinary game ob jects are used with a mesh renderer component, you can use your own materials and shaders or the Unity shaders.
The package does come with a set of shaders taking advantage of the various UV controls for roads and side objects. For roads you can set additional uv data on the uv4 channel. For the shape type of side object you can set vertex colors and also additional uv data on the uv4 channel.
The shaders in the package are example of how you use this data in shaders.
- EasyRoads3D - Unity 5 Standard: This is a copy of the Unity Standard shader using an offset as a way to deal with z-fighting. Offsets also prevent the road from disappearing in the terrain further away from the cam when the terrains LOD system kicks in.
- ER Dual Blend UV1: Click this button to switch back to Edit Mode.
- ER Blend UV4: This is very similar as below but cutout instead of decal:blend.
- ER Dual Road Blend: I Connector.
- ER Road Decal Splat Blend: Blends additional textures with the main texture using a control texture and UV4 detail data.
- ER Road Detail: Blends a detail texture with the main texture using UV4 detail data.
- ER Road Transparency: Full transparency supporting shadows based on decal blend. The shadows are projected in a similar way as they would have done on the terrain below the road.
- Misc / ER Race Track: This blends a second texture with the main texture using uv4 data and it also blends a smoothness texture. This can be used to define the perfect racing line on a racre track.
- Misc / ER Road Splat 4 UV4: This shader blends the track texture with the simulated terrain textures and terrain splatmap. It can be used on a terrain mesh overlay with more geometry detail.
- Terrain / ER Terrain Mask: This is for objects used as terrain masks.
- Terrain / ER Custom Terrain: This is a slightly modified version of the Unity terrain shader supporting holes using a mask object.
- Tesselation / ER Terrain Mesh Tesselation:This shader blends two textures with the simulated terrain textures and terrain splatmap. Tesselation is used on the two textures. It can be used on a terrain mesh overlay like the rock wall in the demo project.
|


--- layout: post status: publish published: true title: Apple TV视频质量不如DVD author: Leask author_login: leask author_email<EMAIL_ADDRESS>author_url: https://leaskh.com wordpress_id: 136 wordpress_url: http://leaskh.wordpress.com/2009/05/25/apple-tv%e8%a7%86%e9%a2%91%e8%b4%a8%e9%87%8f%e4%b8%8d%e5%a6%82dvd date: '2009-05-25 06:19:15 +0800' date_gmt: '2009-05-25 06:19:15 +0800' categories: tags: [] comments: [] ---


EXPIRIENCE AND PERSONAL LIFE
-
2008
Entered the school
-
2010
Won his first karate championship
-
2019
Passed the exams and entered to Lviv Polytechnic National University
-
2021
Began to study Java on his own
-
2021
Passed the introductory text to Binary Studio Academy 2021


Reveal makes these very easy to summon and dismiss. The close button is simple an anchor with a unicode character icon and a class of close-reveal-modal
. Clicking anywhere outside the modal will also dismiss it.
Finally, if your modal summons another Reveal modal, the plugin will handle that for you gracefully.
Second Modal…See? It just slides into place after the other first modal. Very handy when you need subsequent dialogs, or when a modal option impacts or requires another decision.


James Joseph Krefft
Democrat
Chess Teacher, Delivery Driver
HS------Class of 2002 Arapaho High School B.A.---- Class of 2006 Colorado College M.A.----Class of 2011 Norwich University
80122
From 1998 to 2009 I was a member of the Colorado GOP. I worked as a volunteer and grassroots coordinator for Spencer Swalm, Steve Ward and John McCain. From 2009 till 2020 I have been a member of the Colorado Democratic Party. In 2012 I ran of State House in CD36 but did not advance past the primary stage. I have been a volunteer and grassroots organizer for Hillary Clinton, Joe Biden and other Democratic Candidates. Campaigns 1998: John Andrews for Senate 2000: John McCain for President, 2000 Spencer Swalm 2002: Spencer Swalm for State House 2003-5: Colorado College Young Republicans Chair (Resigned in protest) 2004: George W. Bush for President 2008: John McCain for President 2012: Barack Obama for President 2014: Amendment 64 2016: Michele Fry for State House, Steve Sherrick for State Senate, Hillary Clinton 2020: Joe Biden for President, John Hickenlooper for Senate, David Ortiz for State House
Colorado Democratic Party National Democratic Party
I have spent significant time advocating for: Green Energy, the Legalization of Weed, Mill Levy Reform, Corruption Reform and a Balanced Budget. This has primarily been done via speaking at public events or via articles published in various publication. I have also written a book, Trickle Down Poverty, available on Amazon.com.
Have fair and balanced elections is a hallmark of a healthy Democracy. District lines should represent the letter and spirit of Colorado law as well as the basic ideals of Democracy. This is important work. I would like to lend my hands to this important labor.
I have a Vulcan like ability to be impartial and to judge things on facts that tare objectively true. Unlike most candidates for this position I have also worked for both major political parties. I have been a Republican and I have been a Democrat...so I understand the perspective of both sides. I can be a bridge that connects different points of view and a creates consensus that benefits all Coloradans.
I have 20 years experience in politics and in analyzing political data. This has been done both in service of campaigns and on my own for fun. I consume, on average, 20 hours of political content each week and analyze what I digest (as a Hobby). I also have a Graduate Level of History training in research methods. My career in Chess has also given me deep problem solving skill and the ability to think logically about tasks at several levels.
Male


| s3_register {vctrs} | R Documentation |
Generally, the recommend way to register an S3 method is to use the
S3Method()
namespace directive (often generated automatically by the
@export
roxygen2 tag). However, this technique requires that the generic
be in an imported package, and sometimes you want to suggest a package,
and only provide a method when that package is loaded. s3_register()
can be called from your package's .onLoad()
to dynamically register
a method only if the generic's package is loaded.
s3_register(generic, class, method = NULL)
generic |
Name of the generic in the form |
class |
Name of the class |
method |
Optionally, the implementation of the method. By default,
this will be found by looking for a function called Note that providing |
For R 3.5.0 and later, s3_register()
is also useful when demonstrating
class creation in a vignette, since method lookup no longer always involves
the lexical scope. For R 3.6.0 and later, you can achieve a similar effect
by using "delayed method registration", i.e. placing the following in your
NAMESPACE
file:
if (getRversion() >= "3.6.0") { S3method(package::generic, class) }
To avoid taking a dependency on vctrs, you copy the source of
s3_register()
into your own package. It is licensed under the permissive
unlicense to make it
crystal clear that we're happy for you to do this. There's no need to include
the license or even credit us when using this function.
# A typical use case is to dynamically register tibble/pillar methods # for your class. That way you avoid creating a hard dependency on packages # that are not essential, while still providing finer control over # printing when they are used. .onLoad <- function(...) { s3_register("pillar::pillar_shaft", "vctrs_vctr") s3_register("tibble::type_sum", "vctrs_vctr") }


{% extends "_post.html" %} {%hyde title: "zmd" created: 2004-09-02 17:03:41 %} {% block article %} {%article%}
In the last few months, Tambet and I have been working on the successor to rcd called zmd (ZENworks Management Daemon). It is written in C#. I did not choose the name.
Things are going pretty well, and a lot of stuff is starting to work. We have an xmlrpc compatability layer for implementing the old rcd methods (just enough to make the old GUI work), and a remoting layer for the new clients. The xmlrpc stuff is pretty much complete, and you can use the old rug/red-carpet apps with it to install packages, etc. Also we’re writing a new ‘rug’ in C#. You can see it in action here. In that shot, it’s installing some stuff from the ‘funktronics’ aptrpm repository.
I don’t have any code to share yet, but hopefully that will happen soon.
{%endarticle%} {% endblock %}


Home
Tutorials
About
Newsletter
Contact
Just another day
Written by…
This is my second blog…
My First Blog Entry
Written by…
I'm so happy...


Message Strip Types
A number of message strip types are available. They offer preset styling for different contextual situations. Can
be one of 'warning', 'success', 'information', 'error' or normal (default).
Message Strips Without Icons
The default message strip has no icon. Information, Success, Warning and Error message strips by default are
rendered with icons. To remove them set the [noIcon]
property to true
.
Message Strips With Customizable Width
The width of the message strip can be customized by the [width]
and
[minWidth]
properties.
{{ data.properties.message }}


|
MasterScan
Lab_Matlab_control Master Branch
|
Aggregate objects into an ensemble for remote batch opertaions.
dotsClientEnsemble is intended as a drop-in substitue for topsEnsemble. Instead of interacting with objects locally, dotsClientEnsemble acts as a proxy for an ensemble object which it creates in another Matlab instance, via dotsEnsembleUtilities and dotsEnsembleServer.
dotsClientEnsemble defines some static methods which can be invoked without creating an instance, for example to issue a reset command to a dotsEnsembleServer.
Properties and Events | |
| Property | timeout = 5.0 |
| seconds to allow for network communications | |
| Property | isSynchronized = false |
| whether to use strong (true) or weak (false) synchrony | |
| Properties and Events inherited from topsCallList | |
| calls | |
| struct array with fevalable cell arrays to call as a batch | |
| Property | alwaysRunning = true |
| true or false, whether to run indefinitely | |
| Property | invertOrder = false |
| true or false, invert order of calls | |
| Properties and Events inherited from topsConcurrent | |
| Property | runBrieflyString = 'runBriefly' |
| string used for topsDataLog entry just before runBriefly() | |
| Properties and Events inherited from topsRunnable | |
| Property | startFevalable = {} |
| optional fevalable cell array to invoke just before running | |
| Property | finishFevalable = {} |
| optional fevalable cell array to invoke just after running | |
| Property | isRunning = false |
| true or false, whether this object is currently busy running | |
| Property | caller |
| topsRunnable that invoked run() on this object, or empty | |
| Property | startString = 'start' |
| string used for topsDataLog entry just before run() | |
| Property | finishString = 'finish' |
| string used for topsDataLog entry just after run() | |
| Properties and Events inherited from topsFoundation | |
| Property | name = '' |
| a string name to indentify the object | |
| Property | clockFunction =@topsClock |
| clock function, to standardize | |
Protected Properties | |
| Property | clientIP |
| IP address of the Snow Dots client. | |
| Property | clientPort |
| network port of the Snow Dots client | |
| Property | serverIP |
| IP address of the dotsEnsembleServer. | |
| Property | serverPort |
| network port of the dotsEnsembleServer | |
| Property | socket |
| socket identifier for communictions | |
| Property | isConnected = false |
| whether or not this ensemble connected to its server | |
| Property | txnStatus |
| status of the most recent transaction | |
| Property | txnData |
| data from the most recent transaction | |
| Property | isProfiling = false |
| whether or not to invoke the Matlab profiler during transactions | |
| Property | profilingInfo |
| data returned from the Matlab profiler | |
| Protected Properties inherited from topsEnsemble | |
| Property | objects = {} |
| array of objects in the ensemble More... | |
| Property | objectNames = {} |
| optional array of object names, for convenience | |
Methods | |
| self | dotsClientEnsemble (name, clientIP, clientPort, serverIP, serverPort) |
| Constuct with network addresses optional. More... | |
| setAddresses (self, clientIP, clientPort, serverIP, serverPort) | |
| Use the given network addresses for messages. | |
| startProfiling (self, varargin) | |
| Start invoking the Matlab profiler during transactions. More... | |
| stopProfiling (self) | |
| Stop invoking the Matlab profiler during transactions. More... | |
| viewProfiling (self) | |
| View Matlab profiler "info" results for transactions. More... | |
| start (self) | |
| Enable calls to the call list. More... | |
| finish (self) | |
| Disable calls to the call list. More... | |
| run (self, duration) | |
| Start running on the server side, until finish(). More... | |
| runBriefly (self) | |
| Invoke active calls on the server side, not the client side. More... | |
| index | addCall (self, varargin) |
| Add an "fevalable" to the call list. More... | |
| setActiveByName (self, varargin) | |
| Toggle whether a call is active. More... | |
| result | callByName (self, varargin) |
| Invoke a call now, whether or not it's active. More... | |
| index | addObject (self, varargin) |
| Add one object to the ensemble. More... | |
| object | removeObject (self, varargin) |
| Remove one or more objects from the ensemble. More... | |
| assignObject (self, varargin) | |
| Assign one object to a property of one other object. More... | |
| passObject (self, varargin) | |
| Pass one object to a method of another object. More... | |
| setObjectProperty (self, varargin) | |
| Set a property for one or more objects. More... | |
| value | getObjectProperty (self, varargin) |
| Get a property value for one or more objects. More... | |
| result | callObjectMethod (self, varargin) |
| Call a method for one or more objects. More... | |
| Methods inherited from topsEnsemble | |
| self | topsEnsemble (varargin) |
| Constuct with name optional. More... | |
| fig | gui (self) |
| Open a GUI to view object details. More... | |
| index | addObject (self, object, index) |
| Add one object to the ensemble. More... | |
| object | removeObject (self, index) |
| Remove one or more objects from the ensemble. More... | |
| object | getObject (self, index) |
| Get one or more objects in the ensemble. More... | |
| isMember index | containsObject (self, object) |
| Is the given object a member of the ensemble? More... | |
| assignObject (self, innerIndex, outerIndex, varargin) | |
| Assign one object to a property of one other object. More... | |
| passObject (self, innerIndex, outerIndex, method, args, argIndex) | |
| Pass one object to a method of another object. More... | |
| setObjectProperty (self, property, value, index) | |
| Set a property for one or more objects. More... | |
| result | callObjectMethod (self, method, args, index, isCell) |
| Call a method for one or more objects. More... | |
| index | automateObjectMethod (self, name, method, args, index, isCell, isActive) |
| Methods inherited from topsCallList | |
| self | topsCallList (varargin) |
| Constuct with name optional. More... | |
| fig | gui (self) |
| Open a GUI to view object details. More... | |
| index | addCall (self, fevalable, name) |
| Add an "fevalable" to the call list. More... | |
| setActiveByName (self, isActive, name) | |
| Toggle whether a call is active. More... | |
| result | callByName (self, name, isActive) |
| Invoke a call now, whether or not it's active. More... | |
| runBriefly (self) | |
| Invoke active calls in a batch. | |
| Methods inherited from topsConcurrent | |
| self | topsConcurrent (varargin) |
| Constuct with name optional.  More... | |
| runBriefly (self) | |
| Do a little flow control and return as soon as possible. More... | |
| Methods inherited from topsRunnable | |
| self | topsRunnable (varargin) |
| Constuct with name optional.  More... | |
| g | gui (self) |
| Show heirarchy of topsRunnable[Composite] objects. | |
| start (self) | |
| Log action and prepare to do flow control. More... | |
| finish (self) | |
| Log, action and finish doing flow control. More... | |
| logAction (self, actionName, actionData) | |
| Log an event of interest with topsDataLog. More... | |
| logFeval (self, fevalName, fevalable) | |
| Log a function call with topsDataLog. More... | |
| Methods inherited from topsFoundation | |
| self | topsFoundation (name) |
| Constuct with name optional. More... | |
| fig | gui (self) |
| Open a GUI to view object details. More... | |
| p | guiPanel (self, varargin) |
| Make a topsDetailPanel with details about this object. More... | |
name string name given to this automated method call | |||||||||||
Prepare to repeatedly call a method, for one or more objects.
Redefines this topsEnsemble method to work with a remote ensemble server. | |||||||||||
| index | automateObjectMethod (self, varargin) | ||||||||||
| openSocket (self) | |||||||||||
| Get a socket for messages. | |||||||||||
| status txn | requestServerCounterpart (self) | ||||||||||
| Tell the server to create a mirror of this ensemble. | |||||||||||
| status | updateServerObject (self, index) | ||||||||||
| Update the indexed object, from client to server. More... | |||||||||||
| static status txn | resetServer (timeout, clientIP, clientPort, serverIP, serverPort) | ||||||||||
| Tell an ensemble server to reset. More... | |||||||||||
| static status txn | doSynchronousTransaction (txn, socket, timeout, isProfiling) | ||||||||||
| Block while doing a transaction with an ensemble server. More... | |||||||||||
Additional Inherited Members | |
| Static Methods inherited from topsEnsemble | |
| static ensemble | makeEnsemble (name, objects) |
| Convenient utility for combining a bunch of objects into an ensemble. More... | |
| Static Methods inherited from topsCallList | |
| static fevalable | makeFevalable (invertOrder) |
| Utility to make a call list as an fevalable. More... | |
| Static Methods inherited from topsFoundation | |
| static c index | cellAdd (c, item, index) |
| Add an item to a cell array. More... | |
| static selector | cellContains (c, item) |
| Does a cell array conatin an item? More... | |
| static c | cellRemoveItem (c, item) |
| Remove an item from a cell array. More... | |
| static c | cellRemoveElement (c, index) |
| Remove indexed elements from a cell array. More... | |
| static index selector | findStructName (s, name) |
| Where is the given name in the given struct array? More... | |
| self dotsClientEnsemble | ( | name | , |
| clientIP | , | ||
| clientPort | , | ||
| serverIP | , | ||
| serverPort | |||
| ) |
Constuct with network addresses optional.
| name | unique name for this object |
| clientIP | string IP address of the Snow Dots client |
| clientPort | network port number of the Snow Dots client |
| serverIP | string IP address of the ensemble server |
| serverPort | netowrk port number of the ensemble server |
name should be a unique name for this ensemble. If name is provided, assigns name to this object.
If clientIP, clientPort, serverIP, and serverPort are provided, attempts to connect to a server using the given addresses. Otherwise, uses default provided by dotsTheMessenger.
| startProfiling | ( | self | , |
| varargin | |||
| ) |
Start invoking the Matlab profiler during transactions.
| varargin | optional configuraiton arguments to pass to profile() |
startProfiling() clears any old results from the Matlab profiler and sets isProfiling to true. If provided, varargin is passed to the built in profile() for configuration.
While isProfiling is true, this client ensemble will invoke the Matalb profiler and append data specific to remote transactions.
| stopProfiling | ( | self | ) |
Stop invoking the Matlab profiler during transactions.
stopProfiling() sets isProfiling to false and stops invoking the Matlab profiler during remote transactions. Also saves the profiler "info" to profilingInfo.
| viewProfiling | ( | self | ) |
View Matlab profiler "info" results for transactions.
viewProfiling() saves any Matlab profiler "info" to profilingInfo and invokes the built-in profview() for viewing the info.
| start | ( | self | ) |
Enable calls to the call list.
Redefines this topsRunnable list method to work with a remote ensemble server.
| finish | ( | self | ) |
Disable calls to the call list.
Redefines this topsRunnable method to work with a remote ensemble server.
| run | ( | self | , |
| duration | |||
| ) |
Start running on the server side, until finish().
| duration | how long in seconds to keep running |
Redefines this topsConcurrent method to start running on the server side.
By default, invokes start() on the server side to enable server-side function calls, then returns. Server-side function calls will continue until finish() is called.
If duration is provided, invokes start() on the server side to enable server-side function calls. Then blocks for duration sectonds. Once duration has elapsed, invokes finish() on the server side to disable server-side function calls, and returns.
| runBriefly | ( | self | ) |
Invoke active calls on the server side, not the client side.
Redefines this topsConcurrent method to do nothing on the client side.
| index addCall | ( | self | , |
| varargin | |||
| ) |
Add an "fevalable" to the call list.
| fevalable | a cell array with contents to pass to feval() |
| name | unique name to assign to fevalable |
Redefines this topsCallList method to work with a remote ensemble server. fevalable should contain primitives, not objects. The function must be defined and on the path, on the server side.
| setActiveByName | ( | self | , |
| varargin | |||
| ) |
Toggle whether a call is active.
| name | given to an fevalable during addCall() |
| isActive | true or false, whether to invoke the named fevalable during runBriefly() |
Redefines this topsCallList method to work with a remote ensemble server.
| result callByName | ( | self | , |
| varargin | |||
| ) |
Invoke a call now, whether or not it's active.
| name | given to an fevalable during addCall() |
| isActive | whether to activate or un-activate the call at the same time |
Redefines this topsCallList method to work with a remote ensemble server.
| index addObject | ( | self | , |
| varargin | |||
| ) |
Add one object to the ensemble.
| object | any object to add to the ensemble |
| index | optional index where to insert the object |
Redefines this topsEnsemble method to work with a remote ensemble server.
| object removeObject | ( | self | , |
| varargin | |||
| ) |
Remove one or more objects from the ensemble.
| index | ensemble object index or indexes |
Redefines this topsEnsemble method to work with a remote ensemble server.
| assignObject | ( | self | , |
| varargin | |||
| ) |
Assign one object to a property of one other object.
| innerIndex | ensemble index of the object to be assigned |
| outerIndex | ensemble index of the object that will receive |
| varargin | asignment specification pased to substruct() |
Redefines this topsEnsemble method to work with a remote ensemble server.
| passObject | ( | self | , |
| varargin | |||
| ) |
Pass one object to a method of another object.
| innerIndex | ensemble index of the object to pass |
| outerIndex | ensemble index of the receiving object |
| method | function_handle of a receiving object method |
| args | optional cell array of arguments to pass to method |
| argIndex | optional index into args of the object to pass |
Redefines this topsEnsemble method to work with a remote ensemble server.
| setObjectProperty | ( | self | , |
| varargin | |||
| ) |
Set a property for one or more objects.
| property | string name of an ensemble object property |
| value | one value to assign to property |
| index | optional ensemble object index or indexes |
Redefines this topsEnsemble method to work with a remote ensemble server.
| value getObjectProperty | ( | self | , |
| varargin | |||
| ) |
Get a property value for one or more objects.
| property | string name of an ensemble object property |
| index | optional ensemble object index or indexes |
Redefines this topsEnsemble method to work with a remote ensemble server.
| result callObjectMethod | ( | self | , |
| varargin | |||
| ) |
Call a method for one or more objects.
| method | function_handle of an ensemble object method |
| args | optional cell array of arguments to pass to method |
| index | optional ensemble object index or indexes |
| isCell | optional whether to pass objects in one cell array |
Redefines this topsEnsemble method to work with a remote ensemble server.
|
protected |
Update the indexed object, from client to server.
| index | ensemble object index |
Iterates the public properties of the indexed object and sends them one at a time to the server side. If any transaction fails, returns immediately with the failure status. Check txnStatus and txnData for details of the bad transaction.
|
static |
Tell an ensemble server to reset.
| timeout | time in seconds to keep running |
| clientIP | string IP address of the Snow Dots client |
| clientPort | network port number of the Snow Dots client |
| serverIP | string IP address of the ensemble server |
| serverPort | netowrk port number of the ensemble server |
Commands a remote dotsEnsembleServer to reset. If clientIP, clientPort, serverIP, and serverPort are provided, attempts to connect to the server using the given addresses. Otherwise, uses default addresses provided by dotsTheMessenger. @deatils If timeout is provided, waits for that many seconds for the server to report that it's done resetting. Otherwise uses the default timeout from dotsTheMessenger. If the sever never reports, returns a negative status.
Also returns as a second output a struct with details about the remote transaction.
|
static |
Block while doing a transaction with an ensemble server.
| txn | formatted transaction struct |
| socket | socket identifier for dotsTheMessenger |
| timeout | time in seconds to keep running |
| isProfiling | whether or not to invoke the Matlab profiler |
Does the transaction specified in the given txn, with the ensemble server connected to the given socket. txn should have the format provided by dotsEnsembleUtilities.
If timeout is provided, allows that many seconds to finish communicating with the server. Otherwise uses the default timeout from dotsTheMessenger.
If isProfiling is provided and true, invokes the Matlab profiler before starting the transaction, and turns off the profiler afterwards.
Returns a non-negative status if communication finished within the given timeout. Fills in txn with timing details and data received from the server, and returns the updated txn as a second output.


people count: {{::peopleCount}}
name: {{::person.name}}
films count: {{::filmsCount}}
name: {{::film.title}}
starships count: {{::starshipsCount}}
name: {{::ship.name}}
vehicles count: {{::vehiclesCount}}
name: {{::vehicle.name}}
species count: {{::speciesCount}}
name: {{::specie.name}}
planets count: {{::planetsCount}}
name: {{::planet.name}}


| Package | Description |
|---|---|
| java.awt |
Contains all of the classes for creating user
interfaces and for painting graphics and images.
|
| java.awt.event |
Provides interfaces and classes for dealing with different
types of events fired by AWT components.
|
| java.awt.font |
Provides classes and interface relating to fonts.
|
| java.awt.im |
Provides classes and interfaces for the input method framework.
|
| java.awt.im.spi |
Provides interfaces that enable the development of input methods
that can be used with any Java runtime environment.
|
| java.text |
Provides classes and interfaces for handling text, dates, numbers, and messages
in a manner independent of natural languages.
|
| java.text.spi |
Service provider classes for the classes in the java.text package.
|
| java.time.format |
Provides classes to print and parse dates and times.
|
| javax.swing |
Provides a set of "lightweight"
(all-Java language) components that,
to the maximum degree possible, work the same on all platforms.
|
| javax.swing.plaf.synth |
Synth is a skinnable look and feel in which all painting is
delegated.
|
| javax.swing.text |
Provides classes and interfaces that deal with editable
and noneditable text components.
|
| Class and Description |
|---|
| AttributedCharacterIterator
An
AttributedCharacterIterator allows iteration through both text and
related attribute information. |
| AttributedCharacterIterator.Attribute
Defines attribute keys that are used to identify text attributes.
|
| CharacterIterator
This interface defines a protocol for bidirectional iteration over text.
|
| Class and Description |
|---|
| AttributedCharacterIterator
An
AttributedCharacterIterator allows iteration through both text and
related attribute information. |
| Class and Description |
|---|
| AttributedCharacterIterator
An
AttributedCharacterIterator allows iteration through both text and
related attribute information. |
| AttributedCharacterIterator.Attribute
Defines attribute keys that are used to identify text attributes.
|
| BreakIterator
The
BreakIterator class implements methods for finding
the location of boundaries in text. |
| Class and Description |
|---|
| AttributedCharacterIterator
An
AttributedCharacterIterator allows iteration through both text and
related attribute information. |
| AttributedCharacterIterator.Attribute
Defines attribute keys that are used to identify text attributes.
|
| Class and Description |
|---|
| AttributedCharacterIterator
An
AttributedCharacterIterator allows iteration through both text and
related attribute information. |
| Class and Description |
|---|
| AttributedCharacterIterator
An
AttributedCharacterIterator allows iteration through both text and
related attribute information. |
| AttributedCharacterIterator.Attribute
Defines attribute keys that are used to identify text attributes.
|
| Bidi
This class implements the Unicode Bidirectional Algorithm.
|
| BreakIterator
The
BreakIterator class implements methods for finding
the location of boundaries in text. |
| CharacterIterator
This interface defines a protocol for bidirectional iteration over text.
|
| CollationElementIterator
The
CollationElementIterator class is used as an iterator
to walk through each character of an international string. |
| CollationKey
A
CollationKey represents a String under the
rules of a specific Collator object. |
| Collator
The
Collator class performs locale-sensitive
String comparison. |
DateFormat
DateFormat is an abstract class for date/time formatting subclasses which
formats and parses dates or time in a language-independent manner. |
| DateFormat.Field
Defines constants that are used as attribute keys in the
AttributedCharacterIterator returned
from DateFormat.formatToCharacterIterator and as
field identifiers in FieldPosition . |
DateFormatSymbols
DateFormatSymbols is a public class for encapsulating
localizable date-time formatting data, such as the names of the
months, the names of the days of the week, and the time zone data. |
| DecimalFormatSymbols
This class represents the set of symbols (such as the decimal separator,
the grouping separator, and so on) needed by
DecimalFormat
to format numbers. |
FieldPosition
FieldPosition is a simple class used by Format
and its subclasses to identify fields in formatted output. |
Format
Format is an abstract base class for formatting locale-sensitive
information such as dates, messages, and numbers. |
| Format.Field
Defines constants that are used as attribute keys in the
AttributedCharacterIterator returned
from Format.formatToCharacterIterator and as
field identifiers in FieldPosition . |
| MessageFormat.Field
Defines constants that are used as attribute keys in the
AttributedCharacterIterator returned
from MessageFormat.formatToCharacterIterator . |
| Normalizer.Form
This enum provides constants of the four Unicode normalization forms
that are described in
Unicode Standard Annex #15 — Unicode Normalization Forms
and two methods to access them.
|
NumberFormat
NumberFormat is the abstract base class for all number
formats. |
| NumberFormat.Field
Defines constants that are used as attribute keys in the
AttributedCharacterIterator returned
from NumberFormat.formatToCharacterIterator and as
field identifiers in FieldPosition . |
| ParseException
Signals that an error has been reached unexpectedly
while parsing.
|
ParsePosition
ParsePosition is a simple class used by Format
and its subclasses to keep track of the current position during parsing. |
| Class and Description |
|---|
| BreakIterator
The
BreakIterator class implements methods for finding
the location of boundaries in text. |
| Collator
The
Collator class performs locale-sensitive
String comparison. |
DateFormat
DateFormat is an abstract class for date/time formatting subclasses which
formats and parses dates or time in a language-independent manner. |
DateFormatSymbols
DateFormatSymbols is a public class for encapsulating
localizable date-time formatting data, such as the names of the
months, the names of the days of the week, and the time zone data. |
| DecimalFormatSymbols
This class represents the set of symbols (such as the decimal separator,
the grouping separator, and so on) needed by
DecimalFormat
to format numbers. |
NumberFormat
NumberFormat is the abstract base class for all number
formats. |
| Class and Description |
|---|
Format
Format is an abstract base class for formatting locale-sensitive
information such as dates, messages, and numbers. |
ParsePosition
ParsePosition is a simple class used by Format
and its subclasses to keep track of the current position during parsing. |
| Class and Description |
|---|
| AttributedCharacterIterator
An
AttributedCharacterIterator allows iteration through both text and
related attribute information. |
DecimalFormat
DecimalFormat is a concrete subclass of
NumberFormat that formats decimal numbers. |
Format
Format is an abstract base class for formatting locale-sensitive
information such as dates, messages, and numbers. |
MessageFormat
MessageFormat provides a means to produce concatenated
messages in a language-neutral way. |
| ParseException
Signals that an error has been reached unexpectedly
while parsing.
|
SimpleDateFormat
SimpleDateFormat is a concrete class for formatting and
parsing dates in a locale-sensitive manner. |
| Class and Description |
|---|
| ParseException
Signals that an error has been reached unexpectedly
while parsing.
|
| Class and Description |
|---|
| CharacterIterator
This interface defines a protocol for bidirectional iteration over text.
|
DateFormat
DateFormat is an abstract class for date/time formatting subclasses which
formats and parses dates or time in a language-independent manner. |
Format
Format is an abstract base class for formatting locale-sensitive
information such as dates, messages, and numbers. |
| Format.Field
Defines constants that are used as attribute keys in the
AttributedCharacterIterator returned
from Format.formatToCharacterIterator and as
field identifiers in FieldPosition . |
MessageFormat
MessageFormat provides a means to produce concatenated
messages in a language-neutral way. |
NumberFormat
NumberFormat is the abstract base class for all number
formats. |
| ParseException
Signals that an error has been reached unexpectedly
while parsing.
|
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2015, Oracle and/or its affiliates. All rights reserved.


Sanders: Bloomberg ‘not going to get very far'
Elections can't be bought, he says
Presidential candidate Sen. Bernie Sanders on Sunday predicted that his new competitor, former New York Mayor Michael Bloomberg, is "not going to get very far in this election."


Lawan felicitates with Yobe Governor, Buni at 52 - The Nation Newspaper
by https://www.facebook.com/CheerfulpraiseSanni Onogu, Abuja
Senate President Ahmad Lawan has congratulated Governor Mai Mala Buni of Yobe state on his 52nd birthday anniversary.
Lawan in a statement by his Special Adviser (Media), Ola Awoniyi, felicitated with the Governor and members of his family for witnessing the day in good health.
Lawan said Governor Buni has, within his short stay in office, demonstrated great capacity in handling the myriad of problems confronting the state.
The Senate President noted, in particular, his pragmatic approach to the security challenges which he noted is yielding the desired results.
Lawan also applauded Governor Buni’s initiatives in education, youth employment and industrialisation.
He said the efforts of the Governor in this direction will definitely create abundant opportunities for the youth in particular and the people of Yobe in general.
Read Also: Lawan congratulates Lyon, Bello
“Governor Buni has sustained and is building on the legacies of his predecessor and has commendable impact within a short time.
“He has also been carrying along all stakeholders in the state through his all-inclusive approach to governance,” Lawan said.
Lawan, who is also from Yobe state, assured the Governor of his goodwill and support always and prayed that the Almighty Allah will continue to grant the governor good health and many more years of meritorious service to his people.


Typically used to name and normalize spaces in a project. Used for spaces within and between modules and elements of the design. Also takes a multiplier as a second argument. Handy if you want to negate numbers for examples
// setup variable
$sizes: (
huge : 1rem * ($s-golden * 2),
large : 1rem * $s-golden,
medium : 1rem,
small : 1rem * .5
tiny : 1rem * .25
) !default;
// renders a space
@include size(
$name: medium, // name in $sizes
$multiplier: 1 // multiplier
);
Sets up the basic typography for your project. Make sure to set a $breakpoint-default in the settings and populate the $types starting with your default breakpoint. After that the only thing that needs to be defined is whatever differs for each breakpoint.
// setup variable
$types: (
desktop: (
default: (
font-size : 1rem,
font-family : $t-default-font-family,
),
title: (
font-weight : $t-bold,
font-size : 1.75rem,
line-height : 1.2
),
paragraph: (
font-size : 1rem
)
),
mobile: (
default: (
font-size : 1.25rem,
),
title: (
font-size : 3.5rem
)
)
);
// include in your classes
.title--content {
@include type(
$name: title, // name in your typo map
$overwrites: (margin: 0) // overwrites
)
}
// or renders a helper class per item in $typo
@include textClasses(".t-");
The horizontal mixin places things next to each other. It has to be applied to the parent element. The direct child of the element can be specified using the $childSelector argument. The different flavors are; inline (default), samewidth and equidistant
.list {
@include horizontal(
$childSelector: '> li', // child element ex: .module__element
$vAlign: top, // vertical alignment
$type: inline, // samewidth and equidistant
$list: true, // if set true => list reset
$modern: $feature-flexbox // uses the global setting by default
);
}


Cable & Wireless Communications is a full service communications and entertainment provider and delivers market-leading basic and enhanced video, broadband internet and fixed-line telephony to approximately 1.9 million service subscribers (RGUs) represented by almost 980,000 customers as well as mobile voice and data services to 3.4 million mobile subscribers as of September 30, 2019. In addition, through its business division, C&W also operates a state-of-the-art submarine fiber network – the most extensive in the region – connecting over 40 markets. C&W primarily operates under the consumer brands Flow, UTS, Más Móvil, and BTC which are located in the Caribbean, Panama and Bahamas, respectively.


Like FS streams, but with stat on them, and supporting directories and symbolic links, as well as normal files. Also, you can use this to set the stats on a file, even if you don’t change its contents, or to create a symlink, etc.
So, for example, you can “write” a directory, and it’ll call mkdir. You can specify a uid and gid, and it’ll call chown. You can specify a mtime and atime, and it’ll call utimes. You can call it a symlink and provide a linkpath and it’ll call symlink.
Note that it won’t automatically resolve symbolic links. So, if you call fstream.Reader(‘/some/symlink’) then you’ll get an object that stats and then ends immediately (since it has no data). To follow symbolic links, do this: fstream.Reader({path:’/some/symlink’, follow: true }).
There are various checks to make sure that the bytes emitted are the same as the intended size, if the size is set.
## Examples
- .Writer({ path: “path/to/file”
- , mode: 0755 , size: 6 })
.write(“hellon”) .end()
This will create the directories if they’re missing, and then write hellon into the file, chmod it to 0755, and assert that 6 bytes have been written when it’s done.
- .Writer({ path: “path/to/file”
- , mode: 0755 , size: 6 , flags: “a” })
.write(“hellon”) .end()
You can pass flags in, if you want to append to a file.
- .Writer({ path: “path/to/symlink”
- , linkpath: ”./file” , SymbolicLink: true , mode: “0755” // octal strings supported })
.end()
If isSymbolicLink is a function, it’ll be called, and if it returns true, then it’ll treat it as a symlink. If it’s not a function, then any truish value will make a symlink, or you can set type: ‘SymbolicLink’, which does the same thing.
Note that the linkpath is relative to the symbolic link location, not the parent dir or cwd.
.Reader(“path/to/dir”) .pipe(fstream.Writer(“path/to/other/dir”))
This will do like cp -Rp path/to/dir path/to/other/dir. If the other dir exists and isn’t a directory, then it’ll emit an error. It’ll also set the uid, gid, mode, etc. to be identical. In this way, it’s more like rsync -a than simply a copy.


The development of the scientific method has made a significant contribution to how knowledge of the physical world and its phenomena is acquired.To be termed scientific, a method of inquiry must be based on gathering observable and measurable evidence subject to specific principles of reasoning and experimentation.The scientific method consists of the collection of data through observation and experimentation, and the formulation and testing of hypotheses.Science, and the nature of scientific knowledge have also become the subject of Philosophy a method of inquiry must be based on gathering observable and measurable evidence subject to


| Path: | README |
| Last Update: | Mon Jun 18 11:46:50 CEST 2007 |
This plugin adds the ability to require CAPTCHA validation in your model. It depends on RMagick to generate images.
Right now there are two different challenges in this plugin. There’s the familiar, but inaccessible image with embedded text, and then there’s another type of challenge which involves asking the user a (simple) question to prove he is not a robot. The latter type is also passable by people with vision impairments, and as a bonus it is also more lightweight.
How to use in your Rails application.
Put this plugin in your application’s vendor/plugins directory. This can be done easily using the script/plugin script in your application:
script/plugin install http://nimrod.interinter.net/plugins/trunk/validates_captcha
If your app is in Subversion you may want to include an -x to associate the plugin with its original repository so you can svn up it later. Also, note the changed address for the repository if you have previously used this plugin.
This plugin assumes it has write access to a directory where a PStore file with the generated CAPTCHA challenges is stored. This is by default var/data. You can create this directory by running script/generate captcha store_directory in your application’s root folder. You should check that your web server’s user has write access to this directory.
If you plan to use the image challenges, these will also need to be stored in a server-writable directory. This is by default public/images/captcha. You can create this directory by running script/generate captcha image_directory in your application’s root directory.
Both of these locations can be changed. See FleskPlugins::CaptchaConfig for details.
This step is not necessary if you want to validate the challenge in your controller. Instructions on how to do that are further down on the page.
class MySuperModel < ActiveRecord::Base validates_captcha end
In your view, put this inside the form for the model that requires CAPTCHA validation:
<% c = prepare_captcha :type => :image -%> <%= captcha_hidden_field c, 'my_super_model' %> <%= captcha_image_tag c %> <%= captcha_label 'my_super_model', 'Type in the text from the image above' %> <%= captcha_text_field 'my_super_model' %>
To use the question challenge instead, do this:
<% c = prepare_captcha :type => :question -%> <%= captcha_hidden_field c, 'my_super_model' %> <%= captcha_question_as_label c, 'my_super_model' %> <%= captcha_text_field 'my_super_model' %>
See FleskPlugins::Captcha::Helpers for how to customise your view.
If you want to validate the challenge in your controller, you can use the +captcha_valid?+ method:
def save supermodel = MySuperModel.find(params[:id]) supermodel.attributes = params[:my_super_model] if captcha_valid?(params[:my_super_model][:captcha_id], params[:my_super_model][:captcha_validation]) supermodel.save else flash[:error] = "Are you sure you're human?" redirect_or_something end end
If you want to let the model handle the validation, you need to assign the values from your form to your model. If you’re using some form of mass-assignment, this will happen automatically:
def save @supermodel = MySuperModel.find(params[:id]) @supermodel.attributes = params[:my_super_model] @supermodel.save end
The virtual attributes, captcha_id and captcha_validation, are accessible to mass-assignment. If you’re assigning each attribute seperately, you will also have to assign these virtual attributes:
def save @supermodel = MySuperModel.find(params[:id]) @supermodel.name = params[:my_super_model][:name] @supermodel.description params[:my_super_model][:description] @supermodel.captcha_id = params[:my_super_model][:captcha_id] @supermodel.captcha_validation = params[:my_super_model][:captcha_validation] end
For Rails to use the newly installed plugin, you have to restart the server, even in development mode.
You can contact me at toredarell att gmail doot com
See MIT-LICENCE (same as Rails; use however you want; if your computer explodes it’s not my fault)


9-10 July
2007
Detailed
Agenda
Monday
|
Time |
W/G |
Topic |
|
9:00AM ▪ 10:30 |
SC |
Opening
Plenary With
Open Steering Committee |
|
< |
|
Break |
|
|
WIMS |
Imaging
State & Counter MIB (and prototyping) |
|
< |
|
Lunch |
|
|
WIMS |
CIM
Print Device Model |
|
< |
|
Break |
|
|
PMP |
MFP
Alerts |
|
|
PDM |
PDM
Requirements and Model |
Tuesday
|
Time |
W/G |
Topic |
|
9:00AM ▪ 10:30 |
MFD |
Collaboration
on MFD Microsoft
& PWG |
|
< |
|
Break |
|
|
MFD |
Scan
Service Requirements and Model |
|
< |
|
Lunch |
|
|
MFD |
Scan
Service Requirements and Model (cont) |
|
< |
|
Break |
|
|
n/a |
Closing
Plenary Project
Summaries, Action Items and BOF topics |


GCP Video Intelligence
Categories
SEARCH
MEDIA
REPORT
{{ user }}
{{ media_record['title'] }}
Video Timeline


--- extends: base.j2 title: Dota 2 Tread Switching Trainer description: Dota 2 Tread Switching Trainer. Practice your tread switching skills. active_menu: page-webapps header: Tread Switch Trainer page_script: apps/tread-switch-trainer --- {% block main %}


Thank you for you invaluable input, TITLE LASTNAME.
I'm sure you have discovered some incredibly important security breach that demands my immediate attention. I must drop everything, and turn my full attention to this paramount predicament.
Then again, maybe I have better things to do than listen to the paranoid ramblings of random Associates. Perhaps you should stick to doing your own job, and let me do mine?
Oskar Jönsson
Managing Consultant
Head of IT security


Pytonik
Enhances app development faster and easier with less codes
Current Version {{version}}
Community
Documentation
Github


@NonNullApi @NonNullFields
请参阅: 说明
| 接口 | 说明 |
|---|---|
| ComponentDefinition |
Interface that describes the logical view of a set of
BeanDefinitions
and BeanReferences as presented in some configuration context. |
| DefaultsDefinition |
Marker interface for a defaults definition,
extending BeanMetadataElement to inherit source exposure.
|
| ParseState.Entry |
Marker interface for entries into the
ParseState . |
| ProblemReporter |
SPI interface allowing tools and other external processes to handle errors
and warnings reported during bean definition parsing.
|
| ReaderEventListener |
Interface that receives callbacks for component, alias and import
registrations during a bean definition reading process.
|
| SourceExtractor |
Simple strategy allowing tools to control how source metadata is attached
to the bean definition metadata.
|
| 类 | 说明 |
|---|---|
| AbstractComponentDefinition |
Base implementation of
ComponentDefinition that provides a basic implementation of
AbstractComponentDefinition.getDescription() which delegates to ComponentDefinition.getName() . |
| AliasDefinition |
Representation of an alias that has been registered during the parsing process.
|
| BeanComponentDefinition |
ComponentDefinition based on a standard BeanDefinition, exposing the given bean
definition as well as inner bean definitions and bean references for the given bean.
|
| BeanEntry |
ParseState entry representing a bean definition. |
| CompositeComponentDefinition |
ComponentDefinition implementation that holds one or more nested
ComponentDefinition instances, aggregating them into a named group
of components. |
| ConstructorArgumentEntry |
ParseState entry representing a (possibly indexed)
constructor argument. |
| EmptyReaderEventListener |
Empty implementation of the
ReaderEventListener interface,
providing no-op implementations of all callback methods. |
| FailFastProblemReporter |
Simple
ProblemReporter implementation that exhibits fail-fast
behavior when errors are encountered. |
| ImportDefinition |
Representation of an import that has been processed during the parsing process.
|
| Location |
Class that models an arbitrary location in a
resource . |
| NullSourceExtractor |
Simple implementation of
SourceExtractor that returns null
as the source metadata. |
| ParseState |
Simple
Stack -based structure for tracking the logical position during
a parsing process. |
| PassThroughSourceExtractor |
Simple
SourceExtractor implementation that just passes
the candidate source metadata object through for attachment. |
| Problem |
Represents a problem with a bean definition configuration.
|
| PropertyEntry |
ParseState entry representing a JavaBean property. |
| QualifierEntry |
ParseState entry representing an autowire candidate qualifier. |
| ReaderContext |
Context that gets passed along a bean definition reading process,
encapsulating all relevant configuration as well as state.
|
| 异常错误 | 说明 |
|---|---|
| BeanDefinitionParsingException |
Exception thrown when a bean definition reader encounters an error
during the parsing process.
|


A package to duplicate the functionality of node's crypto public key functions, much of this is based on Fedor Indutny's work on indutny/tls.js.
ISC


Publish
Packaged apps are published in the same way as other types of apps in the Chrome Web Store.
For detailed instructions, see Publishing Your App.
Note regarding visibility of packaged apps:
- Only users with Chrome 28 or later can see packaged apps in the Chrome Web Store. Chrome 28 is currently in the
beta channel, but it will be pushed to the stable channel
and be available to all users soon.
- Developers can share direct links to packaged apps with all users.


ProcessingErrorType
public struct ProcessingErrorType : OptionSet
Represents the type of processing error.
-
Declaration
Swift
public let rawValue: Int
-
Creates a new instance with the specified rawValue. Supported types are all captured with static constants and you should not need this
Declaration
Swift
public init(rawValue: Int)
Parameters
rawValue
The raw value *
-
Creates a new instance classifying the supplied error
Declaration
Swift
public init(from error: Error)
Parameters
error
The error to classify *
-
A non OysterKit error
Declaration
Swift
public static let foreign: ProcessingErrorType
-
An internal
ProcessingError
Declaration
Swift
public static let `internal`: ProcessingErrorType
-
An undefined
ProcessingError
Declaration
Swift
public static let undefined: ProcessingErrorType
-
A scanning
ProcessingError
Declaration
Swift
public static let scanning: ProcessingErrorType
-
A parsing
ProcessingError
Declaration
Swift
public static let parsing: ProcessingErrorType
-
An interpretation
ProcessingError
Declaration
Swift
public static let interpretation: ProcessingErrorType
-
A fatal
ProcessingError
Declaration
Swift
public static let fatal: ProcessingErrorType
-
A low level scanner (not scanning) error
Declaration
Swift
public static let scannedMatchFailed: ProcessingErrorType


Class to perform various transformations between player id, absolute seats and relative seats.
Most functions are of the form getXFromY where X and Y are one of:
Id - the player id, a unique value across all players in whirled.
Absolute - the seating position that is the same for all observers
Relative - the seating position relative to the local player. This is mostly useful for the
view of the game.
Name - the name of the player. Name is not reversible (i.e. there is no getIdFromName).
Team - the team of the player (also not reversible)
TODO: The concept of a watcher at a table was added as an afterthought. Rethink the interface
with this in mind.
protected var _localSeat:int
numPlayers:int
[read-only]
Access the number of players at the table.
Implementation
public function get numPlayers():int
numTeams:int
[read-only]
Get the number of teams.
Implementation
public function get numTeams():int
protected var _playerIds:Array
protected var _playerNames:Array
protected var _teams:Array
public function Table(playerNames:Array, playerIds:Array, localSeat:int, teams:Array)
Create a new table.
Parameters
| playerNames:Array — names of the players, in absolute seating order
|
| |
| playerIds:Array — ids of the players, in absolute seating order
|
| |
| localSeat:int — the absolulte seat of the local player |
| |
| teams:Array |
public function getAbsoluteFromId(id:int):int
Get the absolute seating position for a player id.
Parameters
Returns
public function getAbsoluteFromRelative(relative:int):int
Get the absolute seating position of a relative seating position.
Parameters
Returns
public function getIdFromAbsolute(absolute:int):int
Get the player id in an absolute seating position.
Parameters
Returns
public function getIdFromRelative(relative:int):int
Get the player id in a relative seating position.
Parameters
Returns
public function getIdsNotOnTeam(team:Team):Array
Get an array of player ids that are not on a given team.
Parameters
Returns
public function getIdsOnTeam(team:Team):Array
Get an array of player ids that are on a given team.
Parameters
Returns
public function getIdToLeft(id:int):int
Get the id of the player to the left of the player with a given id.
Parameters
Returns
public function getLocalId():int
The id of the local player.
Returns
public function getLocalSeat():int
The absolute seat position of the local player.
Returns
public function getLocalTeammate():int
Get the absolute seat position of the local player's teammate.
Returns
Throws
| — if the team is not exactly 2 players |
public function getNameFromAbsolute(absolute:int):String
Get the name of a player in an absolute seat.
Parameters
Returns
public function getNameFromId(id:int):String
Get the name of a player from the player's id.
Parameters
Returns
public function getNameFromRelative(relative:int):String
Get the name of a player in a relative seat.
Parameters
Returns
public function getRelativeFromAbsolute(absolute:int):int
Get the relative seating position from an absolute seating position.
Parameters
Returns
public function getRelativeFromId(id:int):int
Get the relative seating position for a player id.
Parameters
Returns
public function getSeatAlong(seat:int, hops:int):int
Get the seat a given number of seats away from an absolute or relative seating position.
Parameters
| seat:int — the number of seats away, absolute value must be no more than the number of
players. |
| |
| hops:int |
Returns
public function getSeatToLeft(seat:int):int
Get the seat to the left of an absolute or relative seating position.
Parameters
Returns
public function getTeam(index:int):Team
Get a team by index.
Parameters
Returns
public function getTeamFromAbsolute(seat:int):Team
Get the team that contains the player assigned to the given absolute seating position.
Parameters
Returns
public function getTeamFromId(id:int):Team
Get the team that contains the player with the given id.
Parameters
Returns
public function getTeamFromRelative(seat:int):Team
Get the team that contains the player assigned to the given relative seating position.
Parameters
Returns
public function getTeammateAbsolute(seat:int):int
Get the absolute seat position of the teammate of the player in the given absolute seating
position.
Parameters
Returns
Throws
| — if the team is not exactly 2 players |
public function getTeammateId(id:int):int
Get the id of the teammate of the player with the given id
position.
Parameters
Returns
Throws
| — if the team is not exactly 2 players |
public function isWatcher():Boolean
Test if the local player is only watching (not playing)
Returns


DA-IICT Regular
DA-IICT | Student Placement Cell recommanded resume format for on-campus interviews
Select
Shareable
DA-IICT Classic
DA-IICT | Classic version of recommanded resume format for on-campus interviews
Select


Kentico Kontent Delivery SDK
Summary
The Kentico Kontent Delivery SDK is a library used for retrieving content. You can use the SDK as a CocoaPod package or add it manually.
Sample app
The repository contains sample app which demonstrates basic usage of the SDK. It displays content from a Sample Project that demonstrates Kentico Kontent features and best practices. This fully featured project contains marketing content for Dancing Goat – an imaginary chain of coffee shops. If you don’t have your own Sample Project, any admin of a Kentico Kontent subscription can generate one.
Quick start
1. Add a pod
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '12.0'
use_frameworks!
target '<Your Target Name>' do
pod 'KenticoKontentDelivery'
end
$ pod install
2. Create a type object - in this example, the type object is Article
. It represents a Content type in Kentico Kontent that the retrieved content items are based on. This content type has three elements with following codenames: title
(a text element),teaser_image
(an asset element) and post_date
(a DateTime element).
import ObjectMapper
import KenticoKontentDelivery
class Article: Mappable {
var title: TextElement?
var asset: AssetElement?
var postDate: DateTimeElement?
required init?(map: Map){
let mapper = MapElement.init(map: map)
title = mapper.map(elementName: "title", elementType: TextElement.self)
asset = mapper.map(elementName: "teaser_image", elementType: AssetElement.self)
postDate = mapper.map(elementName: "post_date", elementType: DateTimeElement.self)
}
func mapping(map: Map) {
}
}
3. Prepare the Delivery client
import KenticoKontentDelivery
let client = DeliveryClient.init(projectId: "YOUR_PROJECT_ID")
4. Prepare a query
let articlesQueryParameters = QueryBuilder.params().type(article).language("es-ES")
5. Get and use content items
client.getItems(modelType: Article.self, queryParameters: articleQueryParameters) { (isSuccess, itemsResponse, error) in
if isSuccess {
if let articles = itemsResponse?.items {
// use your articles here
}
} else {
if let error = error {
print(error)
}
}
}
Installation
CocoaPods
CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:
$ gem install cocoapods
To integrate Kentico Kontent into your Xcode project using CocoaPods, specify it in your Podfile
:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!
target '<Your Target Name>' do
pod 'KenticoKontentDelivery'
end
Then, run the following command:
$ pod install
Using the DeliveryClient
The DeliveryClient
class is the main class of the SDK for getting content. Using this class, you can retrieve content from your Kentico Kontent projects.
To create an instance of the class, you need to provide a project ID:
// Initializes an instance of the DeliveryClient client
let client = DeliveryClient.init("975bf280-fd91-488c-994c-2f04416e5ee3")
Once you create a DeliveryClient
, you can start querying your project repository by calling methods on the client instance. See Basic querying for details.
Previewing unpublished content
To retrieve unpublished content, you need to create a DeliveryClient
with both Project ID and Preview API key. Each Kentico Kontent project has its own Preview API key.
import KenticoKontentDelivery
let client = DeliveryClient.init(projectId: "YOUR_PROJECT_ID", previewApiKey:"PREVIEW_API_KEY")
For more details, see Previewing unpublished content using the Delivery API.
Getting content from secured project
To retrieve content from secured project, you need to create a DeliveryClient
with both Project ID and Secure API key.
import KenticoKontentDelivery
let client = DeliveryClient.init(projectId: "YOUR_PROJECT_ID", secureApiKey:"SECURE_API_KEY")
For more details, see Securing the Delivery API.
Configuring retry policy
The client can retry getting items after it encounters errors. By default, the retry policy is enabled, and the maximum retry attempts is 5.
You can configure the maximum retry attempts when creating a DeliveryClient
.
import KenticoKontentDelivery
let client = DeliveryClient.init(projectId: "YOUR_PROJECT_ID", isRetryEnabled: true, maxRetryAttempts: CUSTOM_MAX_ATTEMPTS_NUMBER)
You can also disable the retry policy.
import KenticoKontentDelivery
let client = DeliveryClient.init(projectId: "YOUR_PROJECT_ID", isRetryEnabled: false)
Getting items
Using strongly typed models
In order to receive strongly typed items you need to implement your item model. It’s necessary to conform to Mappable
protocol and implement mapping functionality. You can use your own mapping or our strongly typed element types.
- Element types mapping: “`swift import ObjectMapper
class Article: Mappable { var title: TextElement? var asset: AssetElement? var postDate: DateTimeElement?
required init?(map: Map){
let mapper = MapElement.init(map: map)
title = mapper.map(elementName: "title", elementType: TextElement.self)
asset = mapper.map(elementName: "teaser_image", elementType: AssetElement.self)
postDate = mapper.map(elementName: "post_date", elementType: DateTimeElement.self)
}
func mapping(map: Map) {
}
- Custom mapping:
```swift
import ObjectMapper
public class Cafe: Mappable {
public var city: String?
public var street: String?
public var country: String?
public required init?(map: Map){
}
public func mapping(map: Map) {
city <- map["elements.city.value"]
street <- map["elements.street.value"]
country <- map["elements.country.value"]
}
Basic items querying
Once you have a DeliveryClient
instance, you can start querying your project repository by calling methods on the instance. You need to pass your item model and query. You can create a query for a listing in two ways:
- creating a custom string query:
swift let customQuery = "items?system.type=article&order=elements.post_date[desc]" client.getItems(modelType: Article.self, customQuery: customQuery) { (isSuccess, itemsResponse, error) in ...
- using a query parameters array:
swift let coffeesQueryParameters = QueryBuilder.params().type(contentType).language("es-ES") client.getItems(modelType: Coffee.self, queryParameters: coffeesQueryParameters) { (isSuccess, itemsResponse, error) in ...
- using a query parameters array:
Then you can use your obtained items in the completetion handler:
// Retrieves a list of all content items of certain type
let coffeesQueryParameters = QueryBuilder.params().type("coffee")
client.getItems(modelType: Coffee.self, queryParameters: coffeesQueryParameters) { (isSuccess, itemsResponse, error) in
if isSuccess {
if let coffees = itemsResponse?.items {
// Use your items here
}
} else {
if let error = error {
print(error)
}
}
You can also retrieve just a single item:
// Retrieves a single content item
let client = DeliveryClient.init(projectId: "YOUR_PROJECT_ID")
client.getItem(modelType: Cafe.self, itemName: "boston") { (isSuccess, deliveryItem, error) in
if isSuccess {
if let cafe = deliveryItem.item {
// Use your item here
}
} else {
if let error = error {
print(error)
}
}
}
Getting linked items
You can get linked content items from itemResponse
or itemsResponse
object:
let client = DeliveryClient.init(projectId: "YOUR_PROJECT_ID")
client.getItem(modelType: Article.self, itemName: "on_roasts", completionHandler: { (isSuccess, itemResponse, error) in
if isSuccess {
for articleCodeName in (itemResponse?.item?.relatedArticles?.value)! {
let relatedArticle = itemResponse?.getLinkedItems(codename: articleCodeName, type: Article.self)
}
}
}
Getting content types
Get one content type
client.getContentType(name: "coffee", completionHandler: { (isSuccess, contentType, error) in
if !isSuccess {
fail("Response is not successful. Error: \(String(describing: error))")
}
if let type = contentType {
// use content type here
}
})
Get multiple content types
client.getContentTypes(skip: 2, limit: 4, completionHandler: { (isSuccess, contentTypesResponse, error) in
if !isSuccess {
fail("Response is not successful. Error: \(String(describing: error))")
}
if let response = contentTypesResponse {
// use content types here
}
})
Getting taxonomies
Get taxonomy group
let client = DeliveryClient.init(projectId: "YOUR_PROJECT_ID")
client.getTaxonomyGroup(taxonomyGroupName: "personas", completionHandler: { (isSuccess, deliveryItem, error) in
if isSuccess {
if let taxonomyGroup = deliveryItems.item {
// use your taxonomy group here
}
} else {
if let error = error {
print(error)
}
}
})
Get all taxonomies
let client = DeliveryClient.init(projectId: "YOUR_PROJECT_ID")
client.getTaxonomies(completionHandler: { (isSuccess, deliveryItems, error) in
if isSuccess {
if let taxonomies = deliveryItems?.items {
// use your taxonomies here
}
} else {
if let error = error {
print(error)
}
}
})
Use image transformation
Kentico Kontent supports image transformation by using URL parameters. A helper class is provided to create the URL conveniently.
However, see our documentation on image transformation to understand the restriction of parameters before using the helper class, as the helper class does not validate the input parameters.
Here is a sample usage:
let originalUrl = "https://example.com/sample-image.jpg"
let transformedUrl = ImageUrlBuilder(baseUrl: originalUrl)
.withWidth(300)
.withHeight(500)
.withFitMode(.Clip)
.withDpr(3)
.withBackGroundColor(rgbColor: 0x330FAA)
.withFormat(.png)
.url
// transformedUrl = https://example.com/sample-image.jpg?w=300&h=500&fit=clip&dpr=3.0&bg=330FAA&fm=png
Local Development
For running SDK with sample app locally follow the next steps.
- Download the repository.
- In terminal navigate to /Example.
- Run
pod install
(Cocoapods must be installed). - Open
KenticoKontentDelivery.xcworkspace
in XCode. - Run.
Debug
If you want to view debug info from both clients set client’s enableDebugLogging
attribute:
let deliveryClient = DeliveryClient.init(projectId: "YOUR_PROJECT_ID", enableDebugLogging = true)
Releasing a new version of the Cocoapod package
- Update tracking header
X-KC-SDKID
. - Update
s.version
in.podspec
. - Create a new release with a new tag.
- Travis CI automatically builds and releases a new version of the pod when added new tag.
Documentation
You can find full API reference documentation here.
Updating generated documentation
We use Jazzy which is a command-line utility that generates documentation for Swift. For updating documentation perform the next steps:
- Install Jazzy
[sudo] gem install jazzy
- Run
jazzy
from the root of the repository. - Commit changes from /Docs directory.
Further information
For more developer resources, visit the Kentico Kontent tutorials at https://docs.kontent.ai/tutorials/develop-apps.
Feedback & Contributing
Check out the contributing page to see the best places to file issues, start discussions, and begin contributing.
License
Kentico Kontent Delivery SDK is available under the MIT license. See the LICENSE file for more information.


Hostly is a theme for hosting providers and domain sellers. It comes with built-in plugin that makes it easier to build your offer and manage services. We are aware that hosting services are very specific so we give you open architecture to let you decide, how are you going to manage hosting providing and domain selling.
Sportify is a modern and responsive WordPress theme suitable for renting and booking sports fields & coaches. It has a modern and clean design. UX is based on our research.
Introducing GLOBO, a Directory & Listings Wordpress Theme that has the particularity of offering super fast data filtering options within a top notch Design, that helps users identify instantly the category / sub-category that they are looking for.
I wroked on the blog part, home page new layouts, theme option panel etc.
Takeaway is an Online Food Ordering Theme that offers users to make their food ordering system easy. Users can create menu pages of various layouts. Takeaway includes the Taxonomy & Metadata Search Plugin which allows having a fast & efficient filters of your items.
Social Network is a theme (Skin) for the great WoWonder Script developed by DoughouzForest.
The skin has been designed by the UOU Apps Team providing a modern & fresh style for launching your own social network.
Use this area of the page to describe your project. The icon above is part of a free icon set by Flat Icons. On their website, you can download their free set with 16 icons, or you can purchase the entire set with 146 icons for only $12!


grammar::fa - Create and manipulate finite automatons
This package provides a container class for finite automatons (Short: FA). It allows the incremental definition of the automaton, its manipulation and querying of the definition. While the package provides complex operations on the automaton (via package grammar::fa::op), it does not have the ability to execute a definition for a stream of symbols. Use the packages grammar::fa::dacceptor and grammar::fa::dexec for that. Another package related to this is grammar::fa::compiler. It turns a FA into an executor class which has the definition of the FA hardwired into it. The output of this package is configurable to suit a large number of different implementation languages and paradigms.
For more information about what a finite automaton is see section FINITE AUTOMATONS.
The package exports the API described here.
Creates a new finite automaton with an associated global Tcl command whose name is faName. This command may be used to invoke various operations on the automaton. It has the following general form:
Option and the args determine the exact behavior of the command. See section FA METHODS for more explanations. The new automaton will be empty if no src is specified. Otherwise it will contain a copy of the definition contained in the src. The src has to be a FA object reference for all operators except deserialize and fromRegex. The deserialize operator requires src to be the serialization of a FA instead, and fromRegex takes a regular expression in the form a of a syntax tree. See ::grammar::fa::op::fromRegex for more detail on that.
All automatons provide the following methods for their manipulation:
Destroys the automaton, including its storage space and associated command.
Clears out the definition of the automaton contained in faName, but does not destroy the object.
Assigns the contents of the automaton contained in srcFA to faName, overwriting any existing definition. This is the assignment operator for automatons. It copies the automaton contained in the FA object srcFA over the automaton definition in faName. The old contents of faName are deleted by this operation.
This operation is in effect equivalent to
faName deserialize [srcFA serialize]
This is the reverse assignment operator for automatons. It copies the automation contained in the object faName over the automaton definition in the object dstFA. The old contents of dstFA are deleted by this operation.
This operation is in effect equivalent to
dstFA deserialize [faName serialize]
This method serializes the automaton stored in faName. In other words it returns a tcl value completely describing that automaton. This allows, for example, the transfer of automatons over arbitrary channels, persistence, etc. This method is also the basis for both the copy constructor and the assignment operator.
The result of this method has to be semantically identical over all implementations of the grammar::fa interface. This is what will enable us to copy automatons between different implementations of the same interface.
The result is a list of three elements with the following structure:
The constant string grammar::fa.
A list containing the names of all known input symbols. The order of elements in this list is not relevant.
The last item in the list is a dictionary, however the order of the keys is important as well. The keys are the states of the serialized FA, and their order is the order in which to create the states when deserializing. This is relevant to preserve the order relationship between states.
The value of each dictionary entry is a list of three elements describing the state in more detail.
A boolean flag. If its value is true then the state is a start state, otherwise it is not.
A boolean flag. If its value is true then the state is a final state, otherwise it is not.
The last element is a dictionary describing the transitions for the state. The keys are symbols (or the empty string), and the values are sets of successor states.
Assuming the following FA (which describes the life of a truck driver in a very simple way :)
Drive -- yellow --> Brake -- red --> (Stop) -- red/yellow --> Attention -- green --> Drive (...) is the start state.
a possible serialization is
grammar::fa \ {yellow red green red/yellow} \ {Drive {0 0 {yellow Brake}} \ Brake {0 0 {red Stop}} \ Stop {1 0 {red/yellow Attention}} \ Attention {0 0 {green Drive}}}
A possible one, because I did not care about creation order here
This is the complement to serialize. It replaces the automaton definition in faName with the automaton described by the serialization value. The old contents of faName are deleted by this operation.
Returns the set of all states known to faName.
Adds the states s1, s2, et cetera to the FA definition in faName. The operation will fail any of the new states is already declared.
Deletes the state s1, s2, et cetera, and all associated information from the FA definition in faName. The latter means that the information about in- or outbound transitions is deleted as well. If the deleted state was a start or final state then this information is invalidated as well. The operation will fail if the state s is not known to the FA.
A predicate. It tests whether the state s is known to the FA in faName. The result is a boolean value. It will be set to true if the state s is known, and false otherwise.
Renames the state s to snew. Fails if s is not a known state. Also fails if snew is already known as a state.
Returns the set of states which are marked as start states, also known as initial states. See FINITE AUTOMATONS for explanations what this means.
Mark the states s1, s2, et cetera in the FA faName as start (aka initial).
Mark the states s1, s2, et cetera in the FA faName as not start (aka not accepting).
A predicate. It tests if the state s in the FA faName is start or not. The result is a boolean value. It will be set to true if the state s is start, and false otherwise.
A predicate. It tests if the set of states stateset contains at least one start state. They operation will fail if the set contains an element which is not a known state. The result is a boolean value. It will be set to true if a start state is present in stateset, and false otherwise.
Returns the set of states which are marked as final states, also known as accepting states. See FINITE AUTOMATONS for explanations what this means.
Mark the states s1, s2, et cetera in the FA faName as final (aka accepting).
Mark the states s1, s2, et cetera in the FA faName as not final (aka not accepting).
A predicate. It tests if the state s in the FA faName is final or not. The result is a boolean value. It will be set to true if the state s is final, and false otherwise.
A predicate. It tests if the set of states stateset contains at least one final state. They operation will fail if the set contains an element which is not a known state. The result is a boolean value. It will be set to true if a final state is present in stateset, and false otherwise.
Returns the set of all symbols known to the FA faName.
Returns the set of all symbols for which the state s has transitions. If the empty symbol is present then s has epsilon transitions. If two states are specified the result is the set of symbols which have transitions from s to t. This set may be empty if there are no transitions between the two specified states.
Returns the set of all symbols for which at least one state in the set of states stateset has transitions. In other words, the union of [faName symbols@ s] for all states s in stateset. If the empty symbol is present then at least one state contained in stateset has epsilon transitions.
Adds the symbols sym1, sym2, et cetera to the FA definition in faName. The operation will fail any of the symbols is already declared. The empty string is not allowed as a value for the symbols.
Deletes the symbols sym1, sym2 et cetera, and all associated information from the FA definition in faName. The latter means that all transitions using the symbols are deleted as well. The operation will fail if any of the symbols is not known to the FA.
Renames the symbol sym to newsym. Fails if sym is not a known symbol. Also fails if newsym is already known as a symbol.
A predicate. It tests whether the symbol sym is known to the FA in faName. The result is a boolean value. It will be set to true if the symbol sym is known, and false otherwise.
Define or query transition information.
If next is specified, then the method will add a transition from the state s to the successor state next labeled with the symbol sym to the FA contained in faName. The operation will fail if s, or next are not known states, or if sym is not a known symbol. An exception to the latter is that sym is allowed to be the empty string. In that case the new transition is an epsilon transition which will not consume input when traversed. The operation will also fail if the combination of (s, sym, and next) is already present in the FA.
If next was not specified, then the method will return the set of states which can be reached from s through a single transition labeled with symbol sym.
Remove one or more transitions from the Fa in faName.
If next was specified then the single transition from the state s to the state next labeled with the symbol sym is removed from the FA. Otherwise all transitions originating in state s and labeled with the symbol sym will be removed.
The operation will fail if s and/or next are not known as states. It will also fail if a non-empty sym is not known as symbol. The empty string is acceptable, and allows the removal of epsilon transitions.
Returns the set of states which can be reached by a single transition originating in a state in the set stateset and labeled with the symbol sym.
In other words, this is the union of [faName next s symbol] for all states s in stateset.
A predicate. It tests whether the FA in faName is a deterministic FA or not. The result is a boolean value. It will be set to true if the FA is deterministic, and false otherwise.
A predicate. It tests whether the FA in faName is a complete FA or not. A FA is complete if it has at least one transition per state and symbol. This also means that a FA without symbols, or states is also complete. The result is a boolean value. It will be set to true if the FA is deterministic, and false otherwise.
Note: When a FA has epsilon-transitions transitions over a symbol for a state S can be indirect, i.e. not attached directly to S, but to a state in the epsilon-closure of S. The symbols for such indirect transitions count when computing completeness.
A predicate. It tests whether the FA in faName is an useful FA or not. A FA is useful if all states are reachable and useful. The result is a boolean value. It will be set to true if the FA is deterministic, and false otherwise.
A predicate. It tests whether the FA in faName is an epsilon-free FA or not. A FA is epsilon-free if it has no epsilon transitions. This definition means that all deterministic FAs are epsilon-free as well, and epsilon-freeness is a necessary pre-condition for deterministic'ness. The result is a boolean value. It will be set to true if the FA is deterministic, and false otherwise.
Returns the set of states which are reachable from a start state by one or more transitions.
Returns the set of states which are not reachable from any start state by any number of transitions. This is
[faName states] - [faName reachable_states]
A predicate. It tests whether the state s in the FA faName can be reached from a start state by one or more transitions. The result is a boolean value. It will be set to true if the state can be reached, and false otherwise.
Returns the set of states which are able to reach a final state by one or more transitions.
Returns the set of states which are not able to reach a final state by any number of transitions. This is
[faName states] - [faName useful_states]
A predicate. It tests whether the state s in the FA faName is able to reach a final state by one or more transitions. The result is a boolean value. It will be set to true if the state is useful, and false otherwise.
Returns the set of states which are reachable from the state s in the FA faName by one or more epsilon transitions, i.e transitions over the empty symbol, transitions which do not consume input. This is called the epsilon closure of s.
These methods provide more complex operations on the FA. Please see the same-named commands in the package grammar::fa::op for descriptions of what they do.
For the mathematically inclined, a FA is a 5-tuple (S,Sy,St,Fi,T) where
S is a set of states,
Sy a set of input symbols,
St is a subset of S, the set of start states, also known as initial states.
Fi is a subset of S, the set of final states, also known as accepting.
T is a function from S x (Sy + epsilon) to {S}, the transition function. Here epsilon denotes the empty input symbol and is distinct from all symbols in Sy; and {S} is the set of subsets of S. In other words, T maps a combination of State and Input (which can be empty) to a set of successor states.
In computer theory a FA is most often shown as a graph where the nodes represent the states, and the edges between the nodes encode the transition function: For all n in S' = T (s, sy) we have one edge between the nodes representing s and n resp., labeled with sy. The start and accepting states are encoded through distinct visual markers, i.e. they are attributes of the nodes.
FA's are used to process streams of symbols over Sy.
A specific FA is said to accept a finite stream sy_1 sy_2 ... sy_n if there is a path in the graph of the FA beginning at a state in St and ending at a state in Fi whose edges have the labels sy_1, sy_2, etc. to sy_n. The set of all strings accepted by the FA is the language of the FA. One important equivalence is that the set of languages which can be accepted by an FA is the set of regular languages.
Another important concept is that of deterministic FAs. A FA is said to be deterministic if for each string of input symbols there is exactly one path in the graph of the FA beginning at the start state and whose edges are labeled with the symbols in the string. While it might seem that non-deterministic FAs to have more power of recognition, this is not so. For each non-deterministic FA we can construct a deterministic FA which accepts the same language (--> Thompson's subset construction).
While one of the premier applications of FAs is in parsing, especially in the lexer stage (where symbols == characters), this is not the only possibility by far.
Quite a lot of processes can be modeled as a FA, albeit with a possibly large set of states. For these the notion of accepting states is often less or not relevant at all. What is needed instead is the ability to act to state changes in the FA, i.e. to generate some output in response to the input. This transforms a FA into a finite transducer, which has an additional set OSy of output symbols and also an additional output function O which maps from "S x (Sy + epsilon)" to "(Osy + epsilon)", i.e a combination of state and input, possibly empty to an output symbol, or nothing.
For the graph representation this means that edges are additional labeled with the output symbol to write when this edge is traversed while matching input. Note that for an application "writing an output symbol" can also be "executing some code".
Transducers are not handled by this package. They will get their own package in the future.
This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category grammar_fa of the Tcllib Trackers. Please also report any ideas for enhancements you may have for either package and/or documentation.
When proposing code changes, please provide unified diffs, i.e the output of diff -u.
Note further that attachments are strongly preferred over inlined patches. Attachments can be made by going to the Edit form of the ticket immediately after its creation, and then using the left-most button in the secondary navigation bar.
automaton, finite automaton, grammar, parsing, regular expression, regular grammar, regular languages, state, transducer
Grammars and finite automata
Copyright © 2004-2009 Andreas Kupries <andreas_kupries@users.sourceforge.net>