Mercurial > hg > Papers > 2016 > tatsuki-prosym
changeset 66:ee2d51c7231e
kanagawa
author | tatsuki |
---|---|
date | Thu, 05 Jan 2017 09:35:03 +0900 |
parents | 3d51b13cd099 |
children | b0acdf8e1f1c |
files | Slide/prosym.md |
diffstat | 1 files changed, 11 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/Slide/prosym.md Sun Dec 25 22:02:01 2016 +0900 +++ b/Slide/prosym.md Thu Jan 05 09:35:03 2017 +0900 @@ -155,7 +155,7 @@ ``` Java Either<Error,TreeNode> either = children.at(2); if (either.isA()) - throw new IOException(); + return either.a(); TreeNode child = either.b(); ``` @@ -172,7 +172,7 @@ Children children = root.getChildren(); Either<Error,TreeNode> either = children.at(2); if (either.isA()) - throw new IOException(); + return either.a(); TreeNode child = either.b(); Attribute attribute = child.getAttribute(); String value = attribute.getString("name"); @@ -254,13 +254,13 @@ 以下に検索を行う関数findの定義を記述する。 ``` Java -public Iterator<TreeNode> find(Query query, String key, String searchValue); +public Iterator<TreeNode> find(Query query, String indexKey, String indexValue); ``` -関数findは引数に、Query query、String key、String valueの3つの引数を取り、条件に一致したノードのIteratorインタフェースを返す。 +関数findは引数に、Query query、String indexKey、String indexValueの3つの引数を取り、条件に一致したノードのIteratorインタフェースを返す。 -第1引数には、探索の条件を記述する関数boolean comdition(TreeNode)を定義したInterface Queryを、第2、第3引数の、String key、String ValueはIndexを用いた絞込みに使用する。 +第1引数には、探索の条件を記述する関数boolean comdition(TreeNode)を定義したInterface Queryを、第2、第3引数の、String indexKey、String indexValueはIndexを用いた絞込みに使用する。 # 関数findを用いた検索APIのサンプルコード @@ -281,16 +281,16 @@ ・属性値がnullだった場合、このノードには属性名がPersonidの組のデータは存在しないので、falseを返し次のノードの評価を行う。 -・属性値がnullでなかった場合、p:2と一致するかどうかを調べ結果を返す。 +・PersonIdと組の属性値を持っていた場合、p:2と一致するかどうかを調べ結果を返す。 # JungleでのIndexの実装 -検索を行う際にIndexを使いたい。そこでIndexを実装した。 +検索にIndexを使うためIndexを実装した。 Jungleは、非破壊的木構造というデータ構造上、過去の版の木構造を全て保持しているため、全ての版に独立したIndexが必要となる。 -そのため、前の版のIndexを破壊すること無く、Indexを更新する必要があった。 +そのため、前の版のIndexを上書きすること無く、Indexを更新する必要があった。 既存のTreeMapでは、一度Indexの複製を行った後更新する必要があったため、Indexの更新オーダーがO(n)となっていた。 @@ -339,7 +339,7 @@ # HTML Rendering Engine -Jungleの特性を生かしたRendering Engineを開発した。 +Jungleのを用いた例題アプリケーションとしてRendering Engineを開発した。 今回は例題として、日記(ブログ)を選択した。 @@ -347,7 +347,6 @@ このレンダリングエンジンでは以下の2つの木からなる。 -木同士を参照しながら、レンダリングしていく。 - <u>LayoutTree</u> @@ -357,6 +356,8 @@ 出力するデータが記述された木 +レンダリングエンジンでは、この木同士を参照しながらレンダリングしていく。 + # ContentTree RenderingEngineではContents Treeに以下のように出力するデータを格納した。