クラス SExp

java.lang.Object
  上位を拡張 SExp

public class SExp
extends java.lang.Object

S式を取り扱うクラス created by Toyohisa Nakada (2008.11.15)


フィールドの概要
private  java.util.Vector<java.lang.Object> m_atoms
          S式の個々の要素
 
コンストラクタの概要
protected SExp()
          デフォルトコンストラクタ
  SExp(java.lang.String expression)
          コンストラクタ
 
メソッドの概要
 SExp find(java.lang.Object name)
           
 SExp find(java.util.regex.Pattern ptn)
          S式の最初のアトムを指定して検索を行う。
private static SExp find(java.util.regex.Pattern ptn, SExp exp)
           
 SExp find(java.lang.String first_element)
           
private static SExp find(java.lang.String str, SExp exp)
          S式からの検索
 java.util.Vector<SExp> findAll(java.lang.Object name)
           
 java.util.Vector<SExp> findAll(java.util.regex.Pattern ptn)
          引数のPatternは、Pattern.compile(String)を使うとよい。
private static void findAll(java.util.regex.Pattern ptn, SExp exp, java.util.Vector<SExp> rets)
          引数のPatternは、Pattern.compile(String)を使うとよい。
 java.util.Vector<SExp> findAll(java.lang.String first_element)
           
private static void findAll(java.lang.String first_element, SExp exp, java.util.Vector<SExp> rets)
           
 java.lang.Object get(int index)
           
static boolean isSExp(java.lang.String str)
           
static void main(java.lang.String[] args)
           
private  int parse(java.lang.String expression)
           
 int size()
           
 java.lang.String toString()
          S式の文字列表現
 java.lang.String toTreeString()
          S式のツリー形式の文字列表現
private  java.lang.String toTreeString(java.lang.String indent)
          S式のツリー形式の文字表現で利用する内部関数。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

m_atoms

private java.util.Vector<java.lang.Object> m_atoms
S式の個々の要素

コンストラクタの詳細

SExp

protected SExp()
        throws java.lang.Exception
デフォルトコンストラクタ

例外:
java.lang.Exception

SExp

public SExp(java.lang.String expression)
     throws java.lang.Exception
コンストラクタ

例外:
java.lang.Exception
メソッドの詳細

toString

public java.lang.String toString()
S式の文字列表現

オーバーライド:
クラス java.lang.Object 内の toString

toTreeString

public java.lang.String toTreeString()
S式のツリー形式の文字列表現


toTreeString

private java.lang.String toTreeString(java.lang.String indent)
S式のツリー形式の文字表現で利用する内部関数。引数にインデント文字を指定する。


findAll

public java.util.Vector<SExp> findAll(java.lang.String first_element)
                               throws java.lang.Exception
例外:
java.lang.Exception

findAll

private static void findAll(java.lang.String first_element,
                            SExp exp,
                            java.util.Vector<SExp> rets)
                     throws java.lang.Exception
例外:
java.lang.Exception

findAll

public java.util.Vector<SExp> findAll(java.util.regex.Pattern ptn)
                               throws java.lang.Exception
引数のPatternは、Pattern.compile(String)を使うとよい。

例外:
java.lang.Exception

findAll

public java.util.Vector<SExp> findAll(java.lang.Object name)
                               throws java.lang.Exception
例外:
java.lang.Exception

findAll

private static void findAll(java.util.regex.Pattern ptn,
                            SExp exp,
                            java.util.Vector<SExp> rets)
                     throws java.lang.Exception
引数のPatternは、Pattern.compile(String)を使うとよい。

例外:
java.lang.Exception

find

public SExp find(java.util.regex.Pattern ptn)
          throws java.lang.Exception
S式の最初のアトムを指定して検索を行う。最初のアトムとは、(a b c)の場合はaである。 さらに((a b) c)をaで検索すると(a b)が返り、(a b)で検索すると((a b) c)が返る。 最初のアトムは、正規表現で指定する。 正規表現は、http://www.hellohiro.com/regex.htm がわかりやすい。

例外:
java.lang.Exception

find

public SExp find(java.lang.String first_element)
          throws java.lang.Exception
例外:
java.lang.Exception

find

public SExp find(java.lang.Object name)
          throws java.lang.Exception
例外:
java.lang.Exception

find

private static SExp find(java.lang.String str,
                         SExp exp)
                  throws java.lang.Exception
S式からの検索

例外:
java.lang.Exception

find

private static SExp find(java.util.regex.Pattern ptn,
                         SExp exp)
                  throws java.lang.Exception
例外:
java.lang.Exception

parse

private int parse(java.lang.String expression)
           throws java.lang.Exception
例外:
java.lang.Exception

size

public int size()

get

public java.lang.Object get(int index)
                     throws java.lang.Exception
例外:
java.lang.Exception

isSExp

public static boolean isSExp(java.lang.String str)

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception
例外:
java.lang.Exception