X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fcom%2Fstevesoft%2Fpat%2FBracket.java;h=adbcded91bf4e431edd50c5370c80cd4d3fdad57;hb=7157280e15326fa721d8c19e785f4e0ec2b05e5a;hp=175731bfa76f801bf9b2551a195a3c1550c79045;hpb=7bc226b58110fa26d9dbd3f0c78095d06909ffc3;p=jalview.git diff --git a/src/com/stevesoft/pat/Bracket.java b/src/com/stevesoft/pat/Bracket.java index 175731b..adbcded 100755 --- a/src/com/stevesoft/pat/Bracket.java +++ b/src/com/stevesoft/pat/Bracket.java @@ -1,87 +1,89 @@ -// -// This software is now distributed according to -// the Lesser Gnu Public License. Please see -// http://www.gnu.org/copyleft/lesser.txt for -// the details. -// -- Happy Computing! -// -package com.stevesoft.pat; - -import java.util.*; - -/** The Bracket is a form of the Or class, - implements the pattern element [ ]. */ -class Bracket - extends Or -{ - boolean neg; - Bracket(boolean n) - { - neg = n; - } - - String leftForm() - { - if (neg) - { - return "[^"; - } - else - { - return "["; - } - } - - String rightForm() - { - return "]"; - } - - String sepForm() - { - return ""; - } - - public int matchInternal(int pos, Pthings pt) - { - if (pos >= pt.src.length()) - { - return -1; - } - int r = super.matchInternal(pos, pt); - if ( (neg && r < 0) || (!neg && r >= 0)) - { - return nextMatch(pos + 1, pt); - } - return -1; - } - - public patInt minChars() - { - return new patInt(1); - } - - public patInt maxChars() - { - return new patInt(1); - } - - public Or addOr(Pattern p) - { - pv = null; - v.addElement(p); - p.setParent(null); - return this; - } - - public Pattern clone1(Hashtable h) - { - Bracket b = new Bracket(neg); - b.v = new Vector(); - for (int i = 0; i < v.size(); i++) - { - b.v.addElement( ( (Pattern) v.elementAt(i)).clone1(h)); - } - return b; - } -}; +// +// This software is now distributed according to +// the Lesser Gnu Public License. Please see +// http://www.gnu.org/copyleft/lesser.txt for +// the details. +// -- Happy Computing! +// +package com.stevesoft.pat; + +import java.util.Hashtable; +import java.util.Vector; + +/** + * The Bracket is a form of the Or class, implements the pattern element [ ]. + */ +class Bracket extends Or +{ + boolean neg; + + Bracket(boolean n) + { + neg = n; + } + + String leftForm() + { + if (neg) + { + return "[^"; + } + else + { + return "["; + } + } + + String rightForm() + { + return "]"; + } + + String sepForm() + { + return ""; + } + + public int matchInternal(int pos, Pthings pt) + { + if (pos >= pt.src.length()) + { + return -1; + } + int r = super.matchInternal(pos, pt); + if ((neg && r < 0) || (!neg && r >= 0)) + { + return nextMatch(pos + 1, pt); + } + return -1; + } + + public patInt minChars() + { + return new patInt(1); + } + + public patInt maxChars() + { + return new patInt(1); + } + + public Or addOr(Pattern p) + { + pv = null; + v.addElement(p); + p.setParent(null); + return this; + } + + public Pattern clone1(Hashtable h) + { + Bracket b = new Bracket(neg); + b.v = new Vector(); + for (int i = 0; i < v.size(); i++) + { + b.v.addElement(((Pattern) v.elementAt(i)).clone1(h)); + } + return b; + } +};